Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Mar 2002 08:02:44 -0800 (PST)
From:      Bruce Evans <bde@FreeBSD.org>
To:        cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   cvs commit: src/sys/kern subr_disklabel.c
Message-ID:  <200203301602.g2UG2iH91829@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
bde         2002/03/30 08:02:44 PST

  Modified files:
    sys/kern             subr_disklabel.c 
  Log:
  Fixed handling of short reads in readdisklabel() and writedisklabel().
  These functions use DEV_STRATEGY() which can easily return a short
  count (with no error) for reads near EOF.  EOF happens for "disks" too
  small to contain a label sector (mainly for empty slices).  The functions
  didn't understand this at all, and looked for labels in the garbage
  in the buffer beyond what DEV_STRATEGY() returned.  The recent UMA
  changes combined with my local changes and configuration resulted in
  the garbage often containing a valid but garbage label left over from
  a previous call.
  
  Bugs in EOF handling in -current limited the problem to "disks" with
  size precisely LABELSECTOR sectors.  LABELSECTOR happens to be a very
  unusual "disk" size since it is only 0 for non-i386 arches that don't
  usually have disks with DOS MBRs.
  
  Revision  Changes    Path
  1.63      +6 -0      src/sys/kern/subr_disklabel.c

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200203301602.g2UG2iH91829>