On Monday 26 January 2009, Lukasz Jaroszewski wrote: > Hi, > after opening /dev/ad4 with success for O_RDWR, I am getting [EINVAL] > from write(2), which according to man 2 write, means > `` [EINVAL] The pointer associated with d was > negative.'', as you can see below it is not true, I have tried > different block sizes, with same result. > > How can I write one byte to /dev/adN ?
Hi, You cannot write one byte to /dev/adN, I think. Harddisks are block based. Please see: diskinfo -v ad4 And especially the "sector size". When you seek and transfer data the offset and length must be a factor of the "sector size" or "block size". See also LBA, logical block address. --HPS > > > 1361 ow CALL open(0x80485e3,O_RDWR,<unused>0xbfbfecc8) > 1361 ow NAMI "/dev/ad4" > ;/dev/ad4 is DOS FAT formatted CF Card. > 1361 ow RET open 3 > > 1361 ow CALL write(0x3,0xbfbfecb8,0x8) > 1361 ow RET write -1 errno 22 Invalid argument > > r...@~(0) uname -r > 7.0-STABLE > ----------- > Best Regards > Lukasz. > _______________________________________________ > freebsd-hackers@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-hackers > To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org" _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "freebsd-hackers-unsubscr...@freebsd.org"