use O_FSYNC instead of O_SYNC in FreeBSD.

This commit is contained in:
okuji 2000-11-26 18:27:29 +00:00
parent 65d6a086d0
commit 5c6112a372
2 changed files with 17 additions and 1 deletions

View file

@ -1,3 +1,10 @@
2000-11-27 OKUJI Yoshinori <okuji@gnu.org>
* grub/asmstub.c (serial_init) [!O_SYNC]: Don't specify O_SYNC
to open SERIAL_DEVICE.
(serial_init) [O_FSYNC]: Specify O_FSYNC to open SERIAL_DEVICE.
Reported by Farid Hajji <farid.hajji@ob.kamp.net>.
2000-11-22 OKUJI Yoshinori <okuji@gnu.org>
From Vesa Jaaskelainen <jaaskela@tietomyrsky.fi>:

View file

@ -1029,7 +1029,16 @@ serial_init (unsigned short port, unsigned int speed,
close (serial_fd);
/* Open the device file. */
serial_fd = open (serial_device, O_RDWR | O_NOCTTY | O_SYNC);
serial_fd = open (serial_device,
O_RDWR | O_NOCTTY
#if defined(O_SYNC)
/* O_SYNC is used in Linux (and some others?). */
| O_SYNC
#elif defined(O_FSYNC)
/* O_FSYNC is used in FreeBSD. */
| O_FSYNC
#endif
);
if (serial_fd < 0)
return 0;