* PATCH 2.5.2.6: fix up serial, sysrq
@ 2002-01-01 23:36 Jeff Garzik
0 siblings, 0 replies; 2+ messages in thread
From: Jeff Garzik @ 2002-01-01 23:36 UTC (permalink / raw)
To: Linus Torvalds, Linux-Kernel list; +Cc: viro
[-- Attachment #1: Type: text/plain, Size: 432 bytes --]
The kdev_none change might not be correct, please check. It's the place
in sysrq where the code immediately above syncs local disks, and then
syncs non-local disks. The better change might be to simply remove the
second check altogether, instead of changing it as I have done.
--
Jeff Garzik | Only so many songs can be sung
Building 1024 | with two lips, two lungs, and one tongue.
MandrakeSoft | - nomeansno
[-- Attachment #2: char.patch --]
[-- Type: text/plain, Size: 934 bytes --]
diff -u -r1.4 serial.c
--- drivers/char/serial.c 2002/01/01 22:41:09 1.4
+++ drivers/char/serial.c 2002/01/01 23:19:45
@@ -5827,7 +5827,7 @@
static kdev_t serial_console_device(struct console *c)
{
- return MKDEV(TTY_MAJOR, 64 + c->index);
+ return mk_kdev(TTY_MAJOR, 64 + c->index);
}
/*
diff -u -r1.2 sysrq.c
--- drivers/char/sysrq.c 2001/12/11 04:04:49 1.2
+++ drivers/char/sysrq.c 2002/01/01 23:19:45
@@ -105,7 +105,7 @@
/* Guesses if the device is a local hard drive */
static int is_local_disk(kdev_t dev) {
unsigned int major;
- major = MAJOR(dev);
+ major = major(dev);
switch (major) {
case IDE0_MAJOR:
@@ -206,7 +206,7 @@
for (sb = sb_entry(super_blocks.next);
sb != sb_entry(&super_blocks);
sb = sb_entry(sb->s_list.next))
- if (!is_local_disk(sb->s_dev) && MAJOR(sb->s_dev))
+ if (!is_local_disk(sb->s_dev) && !kdev_none(sb->s_dev))
go_sync(sb, remount_flag);
unlock_kernel();
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: PATCH 2.5.2.6: fix up serial, sysrq
@ 2002-01-03 2:36 Andries.Brouwer
0 siblings, 0 replies; 2+ messages in thread
From: Andries.Brouwer @ 2002-01-03 2:36 UTC (permalink / raw)
To: jgarzik, linux-kernel, torvalds; +Cc: viro
From: Jeff Garzik <jgarzik@mandrakesoft.com>
The kdev_none change might not be correct, please check.
Indeed, I would say it is not.
- if (!is_local_disk(sb->s_dev) && MAJOR(sb->s_dev))
+ if (!is_local_disk(sb->s_dev) && !kdev_none(sb->s_dev))
go_sync(sb, remount_flag);
Without studying the surrounding code, I conjecture that
the test MAJOR(sb->s_dev) was meant to exclude anonymous
devices (with major 0), not only NODEV.
Andries
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2002-01-03 2:37 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-01-03 2:36 PATCH 2.5.2.6: fix up serial, sysrq Andries.Brouwer
-- strict thread matches above, loose matches on Subject: below --
2002-01-01 23:36 Jeff Garzik
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox