Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Jan 2002 16:10:02 -0800 (PST)
From:      Hiten Pandya <hiten@uk.FreeBSD.org>
To:        freebsd-doc@freebsd.org
Subject:   Re: docs/30603: physio(9) is internally inconsistent
Message-ID:  <200201180010.g0I0A2T25987@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR docs/30603; it has been noted by GNATS.

From: Hiten Pandya <hiten@uk.FreeBSD.org>
To: freebsd-gnats-submit@FreeBSD.org, chris@redlinenetworks.com
Cc:  
Subject: Re: docs/30603: physio(9) is internally inconsistent
Date: Fri, 18 Jan 2002 00:06:08 +0000

 I am currently having a look into this problem.  A patch should be 
 soon submitted.  This issue will take a bit time for me, but it will
 be fixed hopefully, before FreeBSD 4.5 is released.
 
 The structure of the physio() routine has been changed from:
 (as found in the src/sys/sys/buf.h header file)
 
 OLD: physio(void (*strategy)(struct buf *), struct buf *bp, dev_t dev, 
      int flags, u_int (*minphys)(struct buf *), struct uio *uio);
 
 NEW: int physio (dev_t dev, struct uio *uio, int ioflag);
 
 The initial change was done by phk@FreeBSD.org, as he refered to it 
 as "wash-and-clean of code".  In other words, this routine has been
 given a makeover since the 3.5.1 release..
 
 Saying that, this change was made 2 years ago!, and no-one noticed
 it till now.. thanks to chris..
 
 The following changes were made: (according to the cvs log of revision
 1.81)
 (I am refering to the src/sys/sys/buf.h file.. others had to be updated
 too..)
 
 o Let physio take read/write compatible args and have it use
   uio->uio_rw to determine the direction.
 
 o physread/physwrite are now #defines for physio
 
 o Remove the inversly name minphys() routine, dev->si_iosize_max
   takes over.
 
 o physio() always uses pbufs.
 
 o Fix the check for non page-aligned transfers, now only unaligned
   transfers largen than (MAXPHYS - PAGE_SIZE) get fragmented (only
   interesting for tapes using max blocksize).
 
 So, in a nutshell, the physio(9) man page needs a re-write, which I will
 do ASAP :)
 
 regards,
 - Hiten
 - <hiten@uk.FreeBSD.org>
 
 -- 
 SSH Fingerprint:
 1024 45:a5:9c:f2:fb:07:da:70:18:02:0b:f3:63:f1:7a:a6 hitenp@hpdi.ath.cx

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




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