Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread devzero
>>>i was wondering how to make kernel messages appear on /dev/ttyS0
>>without a reboot, i.e. kernelparam "console=ttyS0"
>>
>>The solution is simple... the following piece of code is inside
>>opensuse-10.3/src/sysvinit-2.86-115.src.rpm#showconsole-1.08.tar.bz2#showconsole-1.08/blogd.c
>>
>>(void)ioctl(0, TIOCCONS, NULL);  /* Undo any current map if any */
>>if (ioctl(pts, TIOCCONS, NULL) < 0)
>>error("can not set console device to %s: %s\n", ptsname,
>>strerror(errno));
>>
>>so I suppose that's it. Write up a new program that calls the ioctl
>>on a tty, and you should be done. IOW:
>
>TIOCCONS only works for pseudo terminals.
>
>Besides, it only redirects stuff you send to /dev/console. It
>doesn't change what devices printk() prints to. Currently there
>is no way to change that on a running kernel.
>
>Mike.

too bad, but thanks for the info.
___
Jetzt neu! Schützen Sie Ihren PC mit McAfee und WEB.DE. 30 Tage
kostenlos testen. http://www.pc-sicherheit.web.de/startseite/?mc=00

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread Miquel van Smoorenburg
In article <[EMAIL PROTECTED]>,
Jan Engelhardt  <[EMAIL PROTECTED]> wrote:
>
>On Jan 3 2008 13:43, [EMAIL PROTECTED] wrote:
>>
>>hi !
>>
>>i was wondering how to make kernel messages appear on /dev/ttyS0
>without a reboot, i.e. kernelparam "console=ttyS0"
>
>The solution is simple... the following piece of code is inside
>opensuse-10.3/src/sysvinit-2.86-115.src.rpm#showconsole-1.08.tar.bz2#showconsole-1.08/blogd.c
>
>(void)ioctl(0, TIOCCONS, NULL);  /* Undo any current map if any */
>if (ioctl(pts, TIOCCONS, NULL) < 0)
>error("can not set console device to %s: %s\n", ptsname,
>strerror(errno));
>
>so I suppose that's it. Write up a new program that calls the ioctl
>on a tty, and you should be done. IOW:

TIOCCONS only works for pseudo terminals.

Besides, it only redirects stuff you send to /dev/console. It
doesn't change what devices printk() prints to. Currently there
is no way to change that on a running kernel.

Mike.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread devzero
> This errno is so out of place.
yes, that was stupid.

anyway:

# strace ./mytiocons
--snipp--
open("/dev/ttyS0", O_RDWR)  = 3
ioctl(0, TIOCCONS)  = -1 EBUSY (Device or resource busy)
ioctl(3, TIOCCONS)  = -1 EBUSY (Device or resource busy)
--snipp--

man tty_ioctl is telling:

Redirecting console output

TIOCCONS  void
Redirect output that would have gone to
/dev/console or /dev/tty0 to the given tty. If that was a pty master, send 
it to the slave. Anybody can do this as long as the output was not redirected 
yet. If it was redirected already EBUSY is returned, but root may stop 
redirection by using this ioctl with fd pointing at /dev/console or /dev/tty0.



but it doesn`t seem to make any difference if i do that ioctl on /dev/console 
or /dev/tty0 , because i`m getting EBUSY there, too


> 
> 
> On Jan 3 2008 15:39, [EMAIL PROTECTED] wrote:
> >fantastic, thanks!
> >
> >unfortunately..
> >
> >opensuse103:/home/roland/serialcons # ./mytioccons
> >ioctl: Device or resource busy
> >
> >but i`m not deep enough into programming to understand this.
> >
> 
> >int main(void)
> >{
> >int fd = open("/dev/ttyS0", O_RDWR);
> >int errno;
> 
> This errno is so out of place.
> 
> >
> >ioctl(0, TIOCCONS, NULL);
> >
> >if (ioctl(fd, TIOCCONS, NULL) < 0)
> >printf("ioctl: %s\n", strerror(errno));
> >}
> 


_
Der WEB.DE SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen!
http://smartsurfer.web.de/?mc=100071=0066

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread Jan Engelhardt

On Jan 3 2008 15:39, [EMAIL PROTECTED] wrote:
>fantastic, thanks!
>
>unfortunately..
>
>opensuse103:/home/roland/serialcons # ./mytioccons
>ioctl: Device or resource busy
>
>but i`m not deep enough into programming to understand this.
>

>int main(void)
>{
>int fd = open("/dev/ttyS0", O_RDWR);
>int errno;

This errno is so out of place.

>
>ioctl(0, TIOCCONS, NULL);
>
>if (ioctl(fd, TIOCCONS, NULL) < 0)
>printf("ioctl: %s\n", strerror(errno));
>}
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread devzero
fantastic, thanks!

unfortunately..

opensuse103:/home/roland/serialcons # ./mytioccons
ioctl: Device or resource busy

but, it`s not userspace:

opensuse103:/home/roland # lsof |egrep "console|ttyS0"
opensuse103:/home/roland #


in tty_io.c -> ticoccons() there is

if (redirect) {
spin_unlock(_lock);
return -EBUSY;
}


but i`m not deep enough into programming to understand this.

---
mytioccons.c

#include 
#include 
#include 
#include 
#include 
#include 
#include 

int main(void)
{
int fd = open("/dev/ttyS0", O_RDWR);
int errno;

ioctl(0, TIOCCONS, NULL);

if (ioctl(fd, TIOCCONS, NULL) < 0)
printf("ioctl: %s\n", strerror(errno));
}
---




> -Ursprüngliche Nachricht-
> Von: "Jan Engelhardt" <[EMAIL PROTECTED]>
> Gesendet: 03.01.08 14:28:45
> An: [EMAIL PROTECTED]
> CC: linux-kernel@vger.kernel.org
> Betreff: Re: serial console _after_ boot ? - was: Redirect kernel console


> 
> 
> On Jan 3 2008 13:43, [EMAIL PROTECTED] wrote:
> >
> >hi !
> >
> >i was wondering how to make kernel messages appear on /dev/ttyS0 without a 
> >reboot, i.e. kernelparam "console=ttyS0"
> 
> The solution is simple... the following piece of code is inside
> opensuse-10.3/src/sysvinit-2.86-115.src.rpm#showconsole-1.08.tar.bz2#showconsole-1.08/blogd.c
> 
> (void)ioctl(0, TIOCCONS, NULL);  /* Undo any current map if any */
> if (ioctl(pts, TIOCCONS, NULL) < 0)
> error("can not set console device to %s: %s\n", ptsname, 
> strerror(errno));
> 
> so I suppose that's it. Write up a new program that calls the ioctl
> on a tty, and you should be done. IOW:
> 
> #include 
> #include 
> #include 
> #include 
> 
> int main(void)
> {
>   int fd = open("/dev/ttyS0", O_RDWR);
>   ioctl(0, TIOCCONS, NULL);
>   ioctl(fd, TIOCCONS, NULL);
> }
> 


__
Erweitern Sie FreeMail zu einem noch leistungsstärkeren E-Mail-Postfach!

Mehr Infos unter http://produkte.web.de/club/?mc=021131

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread Jan Engelhardt

On Jan 3 2008 13:43, [EMAIL PROTECTED] wrote:
>
>hi !
>
>i was wondering how to make kernel messages appear on /dev/ttyS0 without a 
>reboot, i.e. kernelparam "console=ttyS0"

The solution is simple... the following piece of code is inside
opensuse-10.3/src/sysvinit-2.86-115.src.rpm#showconsole-1.08.tar.bz2#showconsole-1.08/blogd.c

(void)ioctl(0, TIOCCONS, NULL);  /* Undo any current map if any */
if (ioctl(pts, TIOCCONS, NULL) < 0)
error("can not set console device to %s: %s\n", ptsname, 
strerror(errno));

so I suppose that's it. Write up a new program that calls the ioctl
on a tty, and you should be done. IOW:

#include 
#include 
#include 
#include 

int main(void)
{
int fd = open("/dev/ttyS0", O_RDWR);
ioctl(0, TIOCCONS, NULL);
ioctl(fd, TIOCCONS, NULL);
}
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread devzero
hi !

i was wondering how to make kernel messages appear on /dev/ttyS0 without a 
reboot, i.e. kernelparam "console=ttyS0"

after playing for a while with setconsole, setterm and klogconsole i didn`t 
find a way to make that happen.

i can do "setconsole /dev/tty1 /dev/console" and see "test" on tty1

"setterm -msg on -msglevel 8 >/dev/console"  (or >/dev/tty1), modprobe 
loop;rmmod loop - and i see the kernel message there
   
i can do "setconsole /dev/ttyS0 /dev/console" and see "test" on ttyS0

BUT :

"setterm -msg on -msglevel 8 >/dev/console"  (or >/dev/ttyS0), modprobe 
loop;rmmod loop  ..  nothing!

since i came across jan`s posting from 2005, which didn`t get a reply i think 
it`s not that stupid to ask again...

any clue how to do that at runtime or what`s the issue here ? (see excerpts 
below) 

i can set 
regards
roland



List:   linux-kernel
Subject:Redirect kernel console
From:   Jan Engelhardt 
Date:   2005-08-13 12:48:22
Message-ID: Pine.LNX.4.61.0508131447220.4457 () yvahk01 ! tjqt ! qr
[Download message RAW]

Hi,


there is a klogconsole utiltity that allows to change the console to which 
kernel messages are printed. However, is it possible to redirect to ttyS0 
without a reboot?


Jan Engelhardt
--- 





>> Subject: Re: serial console _after_ boot ?

>> > Setterm outputs the correct escape sequences to stdout. You can 
>> > configure another tty using 'setterm -msglevel 8 -msg on > /dev/ttyS0'. 
>> > I tested this on the standard kernel consoles (/dev/tty1-9), and it 
>> > worked. You obviously need root access to write the escape sequences to 
>> > the tty's.
>> 
>> oh - yes, this works! but with tty1-9 only.
>> not with ttyS0 :(
>
>.as the docs tell.
>
> Some options  however  (marked  "virtual  consoles  only" below)  do  not  
> correspond to a terminfo(5) capability.
>
>  -msg [on|off] (virtual consoles only)
>  Enables or disables the sending of kernel printk() messages to 
> the console.
>
>   -msglevel 1-8 (virtual consoles only)
>  Sets the console logging level for kernel printk() messages.  
> All messages strictly more important than  this
>  will  be  printed, so a logging level of 0 has the same effect 
> as -msg on and a logging level of 8 will print
>  all kernel messages.  klogd(8) may be a more convenient 
> interface to the logging of kernel messages.


> > > but i don`t have change_console. 
> > > searched the net and found that this eventually should be part of 
> > > sysvinit package.
> > > but mine doesn`t provide that tool.
> > > 
> > > found "setconsole" which looks like something similar, but "setconsole 
> > > /dev/ttyS0 < /dev/console"
> > > doesn`t have any effect
> > 
> > What distribution do you use? I have change_console on gentoo, yet I 
> > cannot find the tool on a debian etch. But that's a vserver, so it's 
> > probably not a reference.
> 
> i have opensuse 10.3

_
Der WEB.DE SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen!
http://smartsurfer.web.de/?mc=100071=0066

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread devzero
hi !

i was wondering how to make kernel messages appear on /dev/ttyS0 without a 
reboot, i.e. kernelparam console=ttyS0

after playing for a while with setconsole, setterm and klogconsole i didn`t 
find a way to make that happen.

i can do setconsole /dev/tty1 /dev/console and then echo test 
/dev/console and see test on tty1

setterm -msg on -msglevel 8 /dev/console  (or /dev/tty1), modprobe 
loop;rmmod loop - and i see the kernel message there
   
i can do setconsole /dev/ttyS0 /dev/console and then echo test 
/dev/console and see test on ttyS0

BUT :

setterm -msg on -msglevel 8 /dev/console  (or /dev/ttyS0), modprobe 
loop;rmmod loop  ..  nothing!

since i came across jan`s posting from 2005, which didn`t get a reply i think 
it`s not that stupid to ask again...

any clue how to do that at runtime or what`s the issue here ? (see excerpts 
below) 

i can set 
regards
roland



List:   linux-kernel
Subject:Redirect kernel console
From:   Jan Engelhardt jengelh () linux01 ! gwdg ! de
Date:   2005-08-13 12:48:22
Message-ID: Pine.LNX.4.61.0508131447220.4457 () yvahk01 ! tjqt ! qr
[Download message RAW]

Hi,


there is a klogconsole utiltity that allows to change the console to which 
kernel messages are printed. However, is it possible to redirect to ttyS0 
without a reboot?


Jan Engelhardt
--- 





 Subject: Re: serial console _after_ boot ?

  Setterm outputs the correct escape sequences to stdout. You can 
  configure another tty using 'setterm -msglevel 8 -msg on  /dev/ttyS0'. 
  I tested this on the standard kernel consoles (/dev/tty1-9), and it 
  worked. You obviously need root access to write the escape sequences to 
  the tty's.
 
 oh - yes, this works! but with tty1-9 only.
 not with ttyS0 :(

.as the docs tell.

 Some options  however  (marked  virtual  consoles  only below)  do  not  
 correspond to a terminfo(5) capability.

  -msg [on|off] (virtual consoles only)
  Enables or disables the sending of kernel printk() messages to 
 the console.

   -msglevel 1-8 (virtual consoles only)
  Sets the console logging level for kernel printk() messages.  
 All messages strictly more important than  this
  will  be  printed, so a logging level of 0 has the same effect 
 as -msg on and a logging level of 8 will print
  all kernel messages.  klogd(8) may be a more convenient 
 interface to the logging of kernel messages.


   but i don`t have change_console. 
   searched the net and found that this eventually should be part of 
   sysvinit package.
   but mine doesn`t provide that tool.
   
   found setconsole which looks like something similar, but setconsole 
   /dev/ttyS0  /dev/console
   doesn`t have any effect
  
  What distribution do you use? I have change_console on gentoo, yet I 
  cannot find the tool on a debian etch. But that's a vserver, so it's 
  probably not a reference.
 
 i have opensuse 10.3

_
Der WEB.DE SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen!
http://smartsurfer.web.de/?mc=100071distributionid=0066

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread Jan Engelhardt

On Jan 3 2008 13:43, [EMAIL PROTECTED] wrote:

hi !

i was wondering how to make kernel messages appear on /dev/ttyS0 without a 
reboot, i.e. kernelparam console=ttyS0

The solution is simple... the following piece of code is inside
opensuse-10.3/src/sysvinit-2.86-115.src.rpm#showconsole-1.08.tar.bz2#showconsole-1.08/blogd.c

(void)ioctl(0, TIOCCONS, NULL);  /* Undo any current map if any */
if (ioctl(pts, TIOCCONS, NULL)  0)
error(can not set console device to %s: %s\n, ptsname, 
strerror(errno));

so I suppose that's it. Write up a new program that calls the ioctl
on a tty, and you should be done. IOW:

#include sys/ioctl.h
#include sys/stat.h
#include sys/types.h
#include fcntl.h

int main(void)
{
int fd = open(/dev/ttyS0, O_RDWR);
ioctl(0, TIOCCONS, NULL);
ioctl(fd, TIOCCONS, NULL);
}
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread devzero
fantastic, thanks!

unfortunately..

opensuse103:/home/roland/serialcons # ./mytioccons
ioctl: Device or resource busy

but, it`s not userspace:

opensuse103:/home/roland # lsof |egrep console|ttyS0
opensuse103:/home/roland #


in tty_io.c - ticoccons() there is

if (redirect) {
spin_unlock(redirect_lock);
return -EBUSY;
}


but i`m not deep enough into programming to understand this.

---
mytioccons.c

#include sys/ioctl.h
#include sys/stat.h
#include sys/types.h
#include fcntl.h
#include libio.h
#include errno.h
#include stdio.h

int main(void)
{
int fd = open(/dev/ttyS0, O_RDWR);
int errno;

ioctl(0, TIOCCONS, NULL);

if (ioctl(fd, TIOCCONS, NULL)  0)
printf(ioctl: %s\n, strerror(errno));
}
---




 -Ursprüngliche Nachricht-
 Von: Jan Engelhardt [EMAIL PROTECTED]
 Gesendet: 03.01.08 14:28:45
 An: [EMAIL PROTECTED]
 CC: linux-kernel@vger.kernel.org
 Betreff: Re: serial console _after_ boot ? - was: Redirect kernel console


 
 
 On Jan 3 2008 13:43, [EMAIL PROTECTED] wrote:
 
 hi !
 
 i was wondering how to make kernel messages appear on /dev/ttyS0 without a 
 reboot, i.e. kernelparam console=ttyS0
 
 The solution is simple... the following piece of code is inside
 opensuse-10.3/src/sysvinit-2.86-115.src.rpm#showconsole-1.08.tar.bz2#showconsole-1.08/blogd.c
 
 (void)ioctl(0, TIOCCONS, NULL);  /* Undo any current map if any */
 if (ioctl(pts, TIOCCONS, NULL)  0)
 error(can not set console device to %s: %s\n, ptsname, 
 strerror(errno));
 
 so I suppose that's it. Write up a new program that calls the ioctl
 on a tty, and you should be done. IOW:
 
 #include sys/ioctl.h
 #include sys/stat.h
 #include sys/types.h
 #include fcntl.h
 
 int main(void)
 {
   int fd = open(/dev/ttyS0, O_RDWR);
   ioctl(0, TIOCCONS, NULL);
   ioctl(fd, TIOCCONS, NULL);
 }
 


__
Erweitern Sie FreeMail zu einem noch leistungsstärkeren E-Mail-Postfach!

Mehr Infos unter http://produkte.web.de/club/?mc=021131

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread Jan Engelhardt

On Jan 3 2008 15:39, [EMAIL PROTECTED] wrote:
fantastic, thanks!

unfortunately..

opensuse103:/home/roland/serialcons # ./mytioccons
ioctl: Device or resource busy

but i`m not deep enough into programming to understand this.


int main(void)
{
int fd = open(/dev/ttyS0, O_RDWR);
int errno;

This errno is so out of place.


ioctl(0, TIOCCONS, NULL);

if (ioctl(fd, TIOCCONS, NULL)  0)
printf(ioctl: %s\n, strerror(errno));
}
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread devzero
 This errno is so out of place.
yes, that was stupid.

anyway:

# strace ./mytiocons
--snipp--
open(/dev/ttyS0, O_RDWR)  = 3
ioctl(0, TIOCCONS)  = -1 EBUSY (Device or resource busy)
ioctl(3, TIOCCONS)  = -1 EBUSY (Device or resource busy)
--snipp--

man tty_ioctl is telling:

Redirecting console output

TIOCCONS  void
Redirect output that would have gone to
/dev/console or /dev/tty0 to the given tty. If that was a pty master, send 
it to the slave. Anybody can do this as long as the output was not redirected 
yet. If it was redirected already EBUSY is returned, but root may stop 
redirection by using this ioctl with fd pointing at /dev/console or /dev/tty0.



but it doesn`t seem to make any difference if i do that ioctl on /dev/console 
or /dev/tty0 , because i`m getting EBUSY there, too


 
 
 On Jan 3 2008 15:39, [EMAIL PROTECTED] wrote:
 fantastic, thanks!
 
 unfortunately..
 
 opensuse103:/home/roland/serialcons # ./mytioccons
 ioctl: Device or resource busy
 
 but i`m not deep enough into programming to understand this.
 
 
 int main(void)
 {
 int fd = open(/dev/ttyS0, O_RDWR);
 int errno;
 
 This errno is so out of place.
 
 
 ioctl(0, TIOCCONS, NULL);
 
 if (ioctl(fd, TIOCCONS, NULL)  0)
 printf(ioctl: %s\n, strerror(errno));
 }
 


_
Der WEB.DE SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen!
http://smartsurfer.web.de/?mc=100071distributionid=0066

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread Miquel van Smoorenburg
In article [EMAIL PROTECTED],
Jan Engelhardt  [EMAIL PROTECTED] wrote:

On Jan 3 2008 13:43, [EMAIL PROTECTED] wrote:

hi !

i was wondering how to make kernel messages appear on /dev/ttyS0
without a reboot, i.e. kernelparam console=ttyS0

The solution is simple... the following piece of code is inside
opensuse-10.3/src/sysvinit-2.86-115.src.rpm#showconsole-1.08.tar.bz2#showconsole-1.08/blogd.c

(void)ioctl(0, TIOCCONS, NULL);  /* Undo any current map if any */
if (ioctl(pts, TIOCCONS, NULL)  0)
error(can not set console device to %s: %s\n, ptsname,
strerror(errno));

so I suppose that's it. Write up a new program that calls the ioctl
on a tty, and you should be done. IOW:

TIOCCONS only works for pseudo terminals.

Besides, it only redirects stuff you send to /dev/console. It
doesn't change what devices printk() prints to. Currently there
is no way to change that on a running kernel.

Mike.
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: serial console _after_ boot ? - was: Redirect kernel console

2008-01-03 Thread devzero
i was wondering how to make kernel messages appear on /dev/ttyS0
without a reboot, i.e. kernelparam console=ttyS0

The solution is simple... the following piece of code is inside
opensuse-10.3/src/sysvinit-2.86-115.src.rpm#showconsole-1.08.tar.bz2#showconsole-1.08/blogd.c

(void)ioctl(0, TIOCCONS, NULL);  /* Undo any current map if any */
if (ioctl(pts, TIOCCONS, NULL)  0)
error(can not set console device to %s: %s\n, ptsname,
strerror(errno));

so I suppose that's it. Write up a new program that calls the ioctl
on a tty, and you should be done. IOW:

TIOCCONS only works for pseudo terminals.

Besides, it only redirects stuff you send to /dev/console. It
doesn't change what devices printk() prints to. Currently there
is no way to change that on a running kernel.

Mike.

too bad, but thanks for the info.
___
Jetzt neu! Schützen Sie Ihren PC mit McAfee und WEB.DE. 30 Tage
kostenlos testen. http://www.pc-sicherheit.web.de/startseite/?mc=00

--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/