mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
To: Bartlomiej Zolnierkiewicz <B.Zolnierkiewicz@elka.pw.edu.pl>
Cc: Andrew Morton <akpm@osdl.org>, linux-kernel@vger.kernel.org
Subject: [patch 2.6] don't put IDE disks in standby mode on halt on Alpha
Date: Thu, 27 May 2004 19:49:20 +0400	[thread overview]
Message-ID: <20040527194920.A1709@jurassic.park.msu.ru> (raw)

Spinning the disks down across a 'halt' on Alpha is even
worse than doing that on reboot on i386 (assuming the
boot device is IDE disk).
Typically, the sequence to boot another kernel is:
# halt
kernel shuts down, firmware re-initializes,
then on firmware prompt we type something like
>>> boot -file new_kernel_image.gz

Unfortunately, the firmware does not expect the IDE drive
to be in standby mode and reports 'bootstrap failure' on
the first and all subsequent boot attempts until the
drive spins up, which is extremely annoying and
confuses users a lot.

This patch allows architectures override the default
behavior (don't spin the disks down on reboot only)
in asm/ide.h.

Ivan.

--- 2.6/drivers/ide/ide-disk.c	Fri May 21 21:06:12 2004
+++ linux/drivers/ide/ide-disk.c	Fri May 21 21:48:09 2004
@@ -1723,7 +1723,7 @@ static void ide_device_shutdown(struct d
 {
 	ide_drive_t *drive = container_of(dev, ide_drive_t, gendev);
 
-	if (system_state == SYSTEM_RESTART) {
+	if (ide_shutdown_omit_standby(system_state)) {
 		ide_cacheflush_p(drive);
 		return;
 	}
--- 2.6/include/linux/ide.h	Fri May 21 21:47:13 2004
+++ linux/include/linux/ide.h	Fri May 21 21:48:09 2004
@@ -1709,4 +1709,8 @@ static inline int ata_can_queue(ide_driv
 
 extern struct bus_type ide_bus_type;
 
+#ifndef ide_shutdown_omit_standby
+#define ide_shutdown_omit_standby(sys_state)	(sys_state == SYSTEM_RESTART)
+#endif
+
 #endif /* _IDE_H */
--- 2.6/include/asm-alpha/ide.h	Fri May 21 21:47:54 2004
+++ linux/include/asm-alpha/ide.h	Fri May 21 21:48:34 2004
@@ -52,6 +52,8 @@ static inline unsigned long ide_default_
 #define ide_init_default_irq(base)	ide_default_irq(base)
 #endif
 
+#define ide_shutdown_omit_standby(sys_state)	(sys_state != SYSTEM_POWER_OFF)
+
 #include <asm-generic/ide_iops.h>
 
 #endif /* __KERNEL__ */

             reply	other threads:[~2004-05-27 15:49 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-05-27 15:49 Ivan Kokshaysky [this message]
2004-05-27 16:26 ` Arjan van de Ven
2004-05-27 17:11   ` Ivan Kokshaysky
2004-05-27 17:12     ` Arjan van de Ven
2004-05-27 17:41   ` Miquel van Smoorenburg
2004-05-27 16:54 ` Bartlomiej Zolnierkiewicz
2004-05-27 17:08   ` Ivan Kokshaysky
2004-05-27 17:40     ` Bartlomiej Zolnierkiewicz
2004-05-28 15:10       ` Ivan Kokshaysky
2004-05-28 15:40         ` Bartlomiej Zolnierkiewicz
2004-05-28 21:37           ` Ivan Kokshaysky
2004-05-29 18:07             ` Bartlomiej Zolnierkiewicz
2004-05-28 10:34 ` Mark McClelland

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20040527194920.A1709@jurassic.park.msu.ru \
    --to=ink@jurassic.park.msu.ru \
    --cc=B.Zolnierkiewicz@elka.pw.edu.pl \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®