lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20091128222203.GA369@sig21.net>
Date:	Sat, 28 Nov 2009 23:22:03 +0100
From:	Johannes Stezenbach <js@...21.net>
To:	Greg KH <greg@...ah.com>
Cc:	Robert Hancock <hancockrwd@...il.com>,
	Mikhail Malygin <mmalygin@....de>,
	Hans Werner <hwerner4@....de>, Tejun Heo <tj@...nel.org>,
	Thomas Renninger <trenn@...e.de>, linux-kernel@...r.kernel.org
Subject: Re: Samsung N130 ATA exception after 5min uptime -- Phoenix
 FailSafe issue?

On Sat, Nov 28, 2009 at 01:34:46PM -0800, Greg KH wrote:
> On Sat, Nov 28, 2009 at 02:30:38PM -0600, Robert Hancock wrote:
> > On 11/28/2009 01:19 PM, Greg KH wrote:
> >> On Thu, Nov 26, 2009 at 05:42:12PM +0100, Johannes Stezenbach wrote:
> >>>
> >>> Around 5min after boot or resume if generates the following error:
> >>>
> >>> [  302.364174] ata1.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
> >>> [  302.364201] ata1.00: failed command: WRITE DMA
> >>> [  302.364234] ata1.00: cmd ca/00:08:f7:01:1a/00:00:00:00:00/e0 tag 0 dma 4096 out
> >>> [  302.364241]          res 40/00:00:00:00:00/00:00:00:00:00/00 Emask 0x4 (timeout)
> >>> [  302.364257] ata1.00: status: { DRDY }
> >>> [  307.408107] ata1: link is slow to respond, please be patient (ready=0)
> >>> [  312.392109] ata1: device not ready (errno=-16), forcing hardreset
> >>> [  312.392138] ata1: soft resetting link
> >>> [  312.574482] ata1.00: configured for UDMA/133
> >>> [  312.574506] ata1.00: device reported invalid CHS sector 0
> >>> [  312.574542] ata1: EH complete
> >>
> >> This is because after 5 minutes, the BIOS implements C states in the
> >> processor, which causes a "hic-up" in userspace.  Everything should be
> >> fine after this, and most importantly, the power usage drops by a few
> >> watts, which is most important.
> >
> > Why does this "hiccup" seem to cause interrupts to get lost? This would 
> > cause an up to 30-second stall in disk I/O.
> 
> Yup, it does.
> 
> >>> This also happens when booting with rdinit=/bin/sh, i.e. only running busybox sh
> >>> inside initrd.  The error then appears when accessing the disk after the 5min
> >>> period with dd if=/dev/sda of=/dev/null count=10000.
> >>
> >> Yup, see above for why.
> >>
> >> Samsung does this to make booting their BIOS faster.
> >
> > Ugh.. Seriously?
> 
> Seriously.  It's a BIOS issue, and is the way that Samsung has
> implemented this.  There is nothing that the OS can do about it.
> Windows has the same "issue" here.

Um, "how does Windows handle this" would've been my next question.
I didn't do much with Windows before I wiped it, I mainly used it
to confirm the thing works and to do the BIOS update. I did go through
a few reboot cycles though and I think I would've noticed a 30 second
hang. Maybe they just lowered the ATA timeout to hide it or something.
Otherwise I guess google would turn up complaints from Windows users, too,
not just from Linux users.

BTW, at 5min after boot it is 99% guaranteed that this ATA
exception will happen during the occasional fsck. That
doesn't feel right.

> I do not disagree with you at all about this.  This has been
> communicated to Samsung, but at this point in time, they are not going
> to support ACPI and only want Linux to use this interface.

Well, at least they made the information for the SECLINUX interface
available (to you), but it would be better they'd support ACPI.
I mean if they have to support it for Windows 7 anyway, then
what's the point of not supporting it for other OSs?


While were at it I have another question:  When running on battery the
ethernet throughput drops to ~25Mbit/s.  After a bit of experimenting
I found that this is connected to a BIOS entry about "CPU Power
Saving Mode".  lspci shows that this changes "LnkCtl: ASPM L1
Enabled" to "LnkCtl: ASPM L0s L1 Enabled".  Having this config
option in the BIOS is inflexible.  IIRC there was an app in
Windows which allows to configure it at runtime.  Do you
know how to do it in Linux?


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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ