| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
| |
|
|
|
|
|
| |
* rumpdisk/block-rump.c (device_open): Reduce the dev_name buffer size
by one (unused) byte.
|
|
|
|
|
|
|
| |
To match snprintf parameter order.
* rumpdisk/block-rump.c (translate_name): Make `name' parameter last.
(device_open): Fix translate_name call accordingly.
|
|
|
|
| |
* configure.ac: Combine tests for rump/rump.h and librump.
|
| |
|
|
|
|
|
|
|
|
|
| |
A misuse of strtol() caused wrong parameters to be interpreted as '0'
* pci-arbiter/options.c:
* New function parse_number() to handle wrong input
* Call parse_number() from all places where strtol was being called
Message-Id: <20200411113654.6360-2-jlledom@mailfence.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
which will be the default in gcc-10.
* acpi/acpifs.h (fs, acpifs_maptime): Add extern qualifier.
* boot/private.h (verbose): Likewise.
* eth-multiplexer/netfs_impl.h (multiplexer_maptime): Likewise.
* eth-multiplexer/vdev.h (port_bucket, vdev_portclass): Likewise.
* exec/priv.h (port_bucket, execboot_portclass): Likewise.
* ext2fs/ext2fs.h (sblock, sblock_dirty, block_size, log2_block_size,
log2_dev_blocks_per_fs_block, log2_stat_blocks_per_fs_block,
zeroblock, frag_size, frags_per_block, inodes_per_block,
itb_per_group, db_per_group, desc_per_block, addr_per_block,
groups_count, node_to_page_lock, generation_lock, next_generation,
group_desc_image, global_pokel, modified_global_blocks,
use_xattr_translator_records): Likewise.
* hostmux/hostmux.h (hostmux_maptime): Likewise.
* isofs/isofs.h (host_name, mounted_on, disk_image, disk_image_len,
logical_block_size, sblock): Likewise.
* libdiskfs/diskfs.h (diskfs_shortcut_symlink, diskfs_shortcut_chrdev,
diskfs_shortcut_blkdev, diskfs_shortcut_fifo, diskfs_shortcut_ifsock,
diskfs_create_symlink_hook, diskfs_read_symlink_hook): Likewise.
* libnetfs/callbacks.h (_netfs_translator_callback1,
_netfs_translator_callback2): Likewise.
* libnetfs/priv.h (netfs_mtime): Likewise.
* libpager/priv.h (_pager_class): Likewise.
* libtrivfs/trivfs.h (trivfs_check_access_hook, trivfs_check_open_hook,
trivfs_open_hook, trivfs_protid_create_hook, trivfs_peropen_create_hook,
trivfs_protid_destroy_hook, trivfs_peropen_destroy_hook,
trivfs_getroot_hook): Likewise.
* lwip/lwip-hurd.h (lwip_bucket, socketport_class, addrport_class,
shutdown_notify_class, lwip_protid_portclasses, lwip_cntl_portclasses,
lwip_bootstrap_portclass, fsys_identity, lwipcntl, lwip_owner,
lwip_group): Likewise.
* lwip/port/include/netif/hurdtunif.h (tunnel_cntlclass, tunnel_class):
Likewise.
* nfs/nfs.h (main_udp_socket, hostname, mapped_time): Likewise.
* nfsd/nfsd.h (mapped_time, authserver): Likewise.
* pci-arbiter/pcifs.h (fs, pcifs_maptime): Likewise.
* pci-arbiter/startup.h (pci_shutdown_notify_class,
arrange_shutdown_notification): Likewise.
* pfinet/pfinet.h (pfinet_bucket, addrport_class, socketport_class,
fsys_identity, pfinetctl, pfinet_owner, pfinet_group): Likewise.
* pflocal/sserver.h (sock_port_bucket): Likewise.
* proc/proc.h (authserver, self_proc, init_proc, startup_proc, proc_bucket,
proc_class, generic_port_class, exc_class, generic_port, kernel_proc,
global_lock): Likewise.
* term/term.h (termstate, termflags, global_lock, carrier_alert,
select_alert, pty_select_alert, term_bucket, tty_cntl_class,
tty_class, cttyid_class, pty_class, pty_cntl_class, termctl, ptyctl,
inputq, rawq, outputq, remote_input_mode, external_processing,
term_owner, term_group, term_mode, bottom): Likewise.
* usermux/usermux.h (usermux_maptime): Likewise.
* utils/msgids.h (msgid_argp): Likewise.
* libdiskfs/priv.h (_diskfs_mtime): Remove definition.
* lwip/options.h (lwip_argp): Add prototype.
* mach-defpager/priv.h (partitions): Name structure.
(all_partitions): Add extern qualifier.
* acpi/main.c (acpifs_maptime, fs): New variables.
* exec/main.c (port_bucket, execboot_portclass): Likewise.
* ext2fs/ext2fs.c (sblock, sblock_dirty, block_size, log2_block_size,
log2_dev_blocks_per_fs_block, log2_stat_blocks_per_fs_block,
frag_size, frags_per_block, inodes_per_block, itb_per_group,
db_per_group, desc_per_block, addr_per_block, groups_count,
next_generation, group_desc_image, global_pokel,
use_xattr_translator_records): Likewise.
* isofs/main.c (host_name, mounted_on, logical_block_size, sblock):
Likewise.
* libpager/pager-create.c (_pager_class): Likewise.
* lwip/port/netif/hurdtunif.c (tunnel_cntlclass, tunnel_class):
Likewise.
* mach-defpager/default_pager.c (all_partitions): Likewise.
* nfs/main.c (main_udp_socket, hostname, mapped_time): Likewise.
* nfsd/main.c (mapped_time, authserver): Likewise.
* pci-arbiter/main.c (fs, pcifs_maptime): Likewise.
* pci-arbiter/startup.c (*pci_shutdown_notify_class): Likewise.
* pfinet/main.c (pfinetctl, pfinet_owner, pfinet_group, pfinet_bucket,
addrport_class, socketport_class, fsys_identity): Likewise.
* proc/main.c (authserver, self_proc, init_proc, startup_proc,
proc_bucket, proc_class, generic_port_class, exc_class, generic_port,
kernel_proc, global_lock): Likewise.
* term/main.c (termstate, termflags, global_lock, carrier_alert,
select_alert, pty_select_alert, term_bucket, tty_cntl_class,
tty_class, cttyid_class, pty_class, pty_cntl_class, termctl, ptyctl,
outputq, remote_input_mode, external_processing, term_owner,
term_group, term_mode, bottom): Likewise.
* usermux/usermux.c (usermux_mapped_time): Rename to usermux_maptime.
* lwip/main.c: Include "options.h".
(lwip_argp, netif_list): Remove declarations.
(lwip_bucket, socketport_class, addrport_class, shutdown_notify_class,
lwip_cntl_portclasses, lwip_bootstrap_portclass, lwip_owner, lwip_group,
fsys_identity, lwipcntl): New variables.
* eth-multiplexer/multiplexer.c (multiplexer_maptime): Add variable.
* hostmux/hostmux.c (hostmux_mapped_time): Rename variable to hostmux_maptime
* libdiskfs/extra-version.c: Rename file to...
* libdiskfs/priv.c: ... new file.
(diskfs_shortcut_symlink, diskfs_shortcut_chrdev,
diskfs_shortcut_blkdev, diskfs_shortcut_fifo, diskfs_shortcut_ifsock,
diskfs_create_symlink_hook, diskfs_read_symlink_hook): Add weak
variables.
* libdiskfs/Makefile (OTHERSRCS): Replace extra-version.c with priv.c.
* libtrivfs/priv.c: New file.
* libtrivfs/Makefile (OTHERSRCS): Add priv.c
* libcons/extra-version.c: Rename file to...
* libcons/priv.c: ... new file.
* libcons/Makefile (SRCS): Replace extra-version.c with priv.c.
Fix build with #
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* libmachdev/machdev-dev_hdr.h (DEVICE_NULL): Remove macro.
(emul_device): Rename structure to machdev_emul_device.
(emul_device_t): Rename type to machdev_emul_device_t.
(mach_device, mach_device_t, MACH_DEVICE_NULL): Move to...
* libmachdev/mach_device.h: ... new file.
* libmachdev/ds_routines.c: Include "mach_device.h".
* libmachdev/machdev-device_emul.h: Include <mach/notify.h>,
<device/device_types.h>, <device/net_status.h>, <errno.h>
* libmachdev/machdev.h: Include "machdev_hdr.h".
* libmachdev/mig-decls.h: Include "mach_device.h".
* libmachdev/Makefile (LCLHDRS): Add mach_device.h.
(installhdrs): Add machdev-dev_hdr.h.
|
|
|
|
| |
* doc/hurd.texi (eth-multiplexer): Add section.
|
|
|
|
| |
* libmachdev: New directory.
|
|
|
|
|
| |
* libstore/device.c (dopen): Do not use strdup() for `rest'. Free
`master'.
|
|
|
|
| |
@master:/dev/device
|
|
|
|
|
|
| |
* pci-arbiter/pci-ops.c (S_pci_conf_read): Record and pass amount actually
read from config memory.
(S_pci_conf_write): Likewise for write.
|
|
|
|
|
|
| |
As discussed in https://lists.gnu.org/archive/html/bug-hurd/2020-03/msg00018.html.
* Makeconf (lpath): Add -Wl,-rpath-link=<dir> next to -L<dir>.
|
|
|
|
|
|
|
|
|
| |
Shortcut for -d, -b, -s and -f
Usage: --device [<domain>:]<bus>:<slot>.<func>
E.G. --device 00:05.0 is shortcut for -d 0 -b 0 -s 5 -f 0
* pci-arbiter/options.c: Implement --slot option
* pci-arbiter/options.h: Add --slot to options list
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rename some CLI options in order to add the new -D --device arg.
Replace -s by -c for subclasses.
Replace -D by -d for domains.
Domains are optional from now on, default to 0.
Replace -d by -s for devices.
The formerly called "devices" are now called "slots", and
"device" will refer to a combination of
Domain + Bus + Slot + Function
Only -G and -U options create new permission scopes.
* pci-arbiter/options.c: parse_opts(): Rename options
* pci-arbiter/options.h: struct argp_option options[]: Likewise
|
|
|
|
| |
* pfinet/socket.c: Define _HACK_ERRNO_H to get a proper errno definition.
|
|
|
|
|
|
|
| |
errno is also used by glue headers, so we can not actually check it
* pfinet/io-ops.c (S_io_reauthenticate): Do not check that it's EINTR
that make_sock_user failed with.
|
|
|
|
|
|
| |
* lwip/io-ops.c (lwip_S_io_reauthenticate): Return errno on
make_sock_user returning an error.
* pfinet/io-ops.c (S_io_reauthenticate): Likewise.
|
|
|
|
|
|
|
|
|
|
|
| |
_ports_create_port_internal may return EINTR.
* lwip/port-objs.c (make_sock_user): Set errno when ports_create_port
returns an error.
* pfinet/socket.c (make_sock_user): Likewise.
* lwip/io-ops.c (lwip_S_io_reauthenticate): Loop while make_sock_user
errors with EINTR.
* pfinet/io-ops.c (S_io_reauthenticate): Likewise.
|
|
|
|
|
| |
* libfshelp-tests/Makefile (HURDLIBS): Add ihash and shouldbeinlibc.
(race locks): Add ../libihash/libihash.a.
|
|
|
|
| |
* trans/Makefile (password-LDLIBS): Remove -lcrypt
|
|
|
|
|
|
|
|
| |
When the last translator box contains a port to a died translator, we do
not want to consider this as a whole failure.
* libfshelp/translator-list.c (fshelp_get_active_translators): On
mach_port_mod_refs failure, reset err to 0.
|
|
|
|
|
|
|
|
|
| |
* trans/remap.c:
* trivfs_S_dir_lookup():
* Match and replace prefixes instead of complete
file names. This is needed to remap entire file
systems, not only trivial ones.
Message-Id: <20191220185911.6448-2-jlledom@mailfence.com>
|
|
|
|
|
|
|
|
| |
* pci-arbiter/pcifs.c:
* init_file_system: Remove unnecessary free()
* create_fs_tree:
Fix a boundary overrun where no devices are found.
Message-Id: <20191124194721.4982-2-jlledom@mailfence.com>
|
|
|
|
|
|
|
|
| |
linux seems to allocate 8 blocks for any fast symlink.
* ext2fs/inode.c (write_symlink): Do not assert that st_blocks is 0.
(read_symlink): Return EINVAL when node->dn_stat.st_size >=
MAX_INODE_SYMLINK, not when node->dn_stat.st_blocks != 0.
|
|
|
|
|
|
|
| |
* configure.ac (--without-libcrypt): Add option. Only test for libcrypt
if it is not set.
* utils/Makefile (login-LDLIBS, addauth-LDLIBS, setauth-LDLIBS): Only
add -lcrypt when libcrypt is available.
|
|
|
|
| |
* utils/login.c (default_args): Set UMASK to 022.
|
|
|
|
|
|
| |
* libfshelp/fshelp.h (fshelp_rlock_po_fini): New inline function.
* libdiskfs/peropen-rele.c (diskfs_release_peropen): Call fshelp_rlock_po_fini.
* libnetfs/release-peropen.c (netfs_release_peropen): Likewise.
|
|
|
|
|
| |
* libfshelp/fshelp.h (fshelp_rlock_init, fshelp_rlock_po_init)
[!__USE_EXTERN_INLINES || DISKFS_DEFINE_EXTERN_INLINE]: Add prototypes.
|
|
|
|
|
| |
* pci-arbiter/pcifs.c (create_fs_tree): Remove all memset() previous to
snprintf() calls.
|
|
|
|
|
|
|
|
|
|
|
| |
* configure.ac: Detect pciaccess pkg module. Define HAVE_LIBPCIACCESS,
libpciaccess_CFLAGS, libpciaccess_LIBS variables.
* config.make.in (HAVE_LIBPCIACCESS, libpciaccess_CFLAGS,
libpciaccess_LIBS): Add variables.
* Makefile (prog-subdirs) [!HAVE_LIBPCIACCESS]: Do not add pci-arbiter.
* pci-arbiter/Makefile (LDLIBS): Use $(libpciaccess_LIBS) instead of
-lpciaccess.
(CFLAGS): Use $(libpciaccess_CFLAGS).
|
|
|
|
|
| |
* pci-arbiter/netfs_impl.c:
* netfs_attempt_write: Cast op function to pci_io_op_t
|
|
|
|
|
| |
* pci-arbiter/startup-ops.c:
* S_startup_dosync: Call pci_system_cleanup().
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch removes all embedded pciaccess code from the arbiter
and instead uses the external pciaccess library.
* pci-arbiter/Makefile:
* Remove pci_access.c and x86_pci.c from the sources.
* pci-arbiter/func_files.c:
* io_config_file: Use a harcoded PCI config size.
* read_rom_file:
Grab the full rom first, then return the
requested amount.
* pci-arbiter/main.c:
* main: Call create_fs_tree() w/o pci_sys.
Since it's not part of the translator anymore.
* pci-arbiter/netfs_impl.c:
* netfs_attempt_read:
Send pci_device_cfg_read() as the read op.
* netfs_attempt_write:
Send pci_device_cfg_write() as the write op.
* pci-arbiter/pci-ops.c:
* S_pci_conf_read: Call libpciaccess' pci_device_cfg_read().
* S_pci_conf_write: Call libpciaccess' pci_device_cfg_write().
* S_pci_get_dev_rom:
Set rom.base_addr to zero for the moment, until
libpciaccess esposes it properly.
* pci-arbiter/pci_access.c: Deleted
* pci-arbiter/pci_access.h: Deleted
* pci-arbiter/pcifs.c:
* create_fs_tree:
Remove the pci_sys parameter.
Use libpciaccess' iterator.
Use a hardcoded config space size.
* pci-arbiter/pcifs.h: Definitions for changes in pcifs.c.
* pci-arbiter/x86_pci.c: Deleted.
* pci-arbiter/x86_pci.h: Deleted.
|
|
|
|
|
|
| |
snprintf guarantees to add a trailing \0, so there is no need to add one
* pci-arbiter/pcifs.c (create_fs_tree): Give whole buffer to snprintf.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* pci-arbiter/pcifs.c:
* create_dir_entry:
Limit to NAME_SIZE-1 when calling strncpy().
Finish entry->name with '\0'.
* create_fs_tree:
memset() to 0 the directory entry.
Limit to NAME_SIZE-1 all calls to
snprintf() and strncpy().
Message-Id: <20191103093756.9672-4-jlledom@mailfence.com>
|
|
|
|
|
| |
* libfshelp/fshelp.h (fshelp_rlock_init, fshelp_rlock_po_init)
[!__USE_EXTERN_INLINES && !DISKFS_DEFINE_EXTERN_INLINE]: Do not define.
|
|
|
|
|
|
|
| |
When len=0 and start is completely before an existing lock, there is no
interference.
* libfshelp/rlock-tweak.c (fshelp_rlock_tweak): Fix test when len=0.
|
|
|
|
|
| |
* procfs/process.c (entries): Add PSTAT_THREAD_SCHED in `needs' field of
entry for process_file_gc_stat.
|
|
|
|
|
|
|
|
| |
Last_processor is an int in the proc info, and there aren't
really plans for machines with more than 4 billion processors.
* procfs/process.c (process_file_gc_stat): Make last_processor unsigned
instead of long unsigned.
|
|
|
|
|
| |
* proc/info.c (S_proc_getprocinfo): Only set last_processor field when
err == 0.
|
|
|
|
| |
proc/info.c (S_proc_getprocinfo): Fix filling last_processor member.
|
|
|
|
| |
configure.ac: Fix including <mach/thread_info.h>.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Read last_processor (new member) from thread_info structures, and fill stat
structure with this.
* configure.ac: Check whether thread_sched_info structure includes
`last_processor' member.
* proc/info.c (S_proc_getprocinfo)
[HAVE_STRUCT_THREAD_SCHED_INFO_LAST_PROCESSOR]: Set `last_processor' field.
* procfs/process.c (process_file_gc_stat)
[HAVE_STRUCT_THREAD_SCHED_INFO_LAST_PROCESSOR]: Set last processor proc
field to `thsi->last_processor'.
[!HAVE_STRUCT_THREAD_SCHED_INFO_LAST_PROCESSOR]: Set last processor proc
field to 0.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2019-03-04 Svante Signell <svante.signell@gmail.com>
* file-lock.c: Make flock work regardless of the
mode in which the file was opened.
2019-02-12 Svante Signell <svante.signell@gmail.com>
* file-lock.c: Comment out "Make flock work without R or W mode"
2019-02-01 Svante Signell <svante.signell@gmail.com>
* Update copyright years.
* file-record-lock.c(netfs_S_file_record_lock):
Don't set rendezvous to MACH_PORT_NULL.
2017-01-05 Svante Signell <svante.signell@gmail.com>
* Update copyright years and headers.
* dir-lookup.c(netfs_S_dir_lookup): Call fshelp_rlock_tweak()
with new last argument rendezvous = MACH_PORT_NULL.
* file-lock.c(netfs_S_file_lock): Likewise.
* file-record-lock.c(netfs_S_file_record_lock): Likewise.
(netfs_S_file_record_lock): Add new argument mach_port_t rendezvous.
2016-05-23 Svante Signell <svante.signell@gmail.com>
* netfs.h (struct peropen): Change the type of rlock_status from
an int to a struct rlock_peropen.
(struct node): Change the type of userbox from a struct lock_box
to a struct rlock_box.
* dir-lookup.c (netfs_S_dir_lookup): Use fshelp_rlock_tweak.
* file-lock-stat.c (netfs_S_file_lock_stat): Total rewrite
around the new record locking functions.
* file-lock.c (netfs_S_file_lock): Likewise.
* file-record-lock.c (netfs_S_file_record_lock): Likewise.
* make-node.c (netfs_make_node): Initialize userbox with
fshelp_rlock_init.
* make-peropen.c (netfs_make_peropen): Initialize lock_status
using fshelp_rlock_po_init.
(netfs_make_peropen): Add a comment that po->refcnt starts at zero.
* relese-peropen.c (netfs_release_peropen): Release lock_status
using fshelp_rlock_drop_peropen.
2001-04-11 Neal H Walfield <neal@cs.uml.edu>
* file-record-lock.c: New file. Implement
netfs_S_file_record_lock.
* Makefile (SRCS): Add file-record-lock.c
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2019-03-04 Svante Signell <svante.signell@gmail.com>
* test-*.c: Update code, remove test results.
* README.new_tests: New file, summarize new test results.
2019-02-12 Svante Signell <svante.signell@gmail.com>
* test-*.c: Update code, add some test results.
* Makefile: Remove extra flags.
2019-02-01 Svante Signell <svante.signell@gmail.com>
* Update copyright years.
2016-05-23 Svante Signell <svante.signell@gmail.com>
* Makefile: Add sub-directory libfshelp-tests.
2018-12-07 Svante Signell <svante.signell@gmail.com>
* Update copyright years.
* locks.c(cmd_lock): Call fshelp_rlock_tweak()
with new last argument rendezvous = MACH_PORT_NULL.
2017-01-05 Svante Signell <svante.signell@gmail.com>
* Update copyright years and headers.
2016-12-28 Svante Signell <svante.signell@gmail.com>
* Makefile: test-flock.c, test-lockf.c and test-fcntl.c
* test-lockf.c: New file
* Rename set-flock.c, set-fcntl.c to test-flock.c test-fcntl.c
* TODO: Update README
2016-05-23 Svante Signell <svante.signell@gmail.com>
* Makefile: Link with pthread, add build of set-flock.c and set-fcntl.c
* define temporary CPP_FLAGS until glibc is updated
* set-flock.c, set-fcntl.c: New files.
* Fix typos in README
2001-04-11 Neal H Walfield <neal@cs.uml.edu>
* ChangeLog: New file, mentioning itself in this sentence.
* Makefile: New file.
* README: Likewise.
* fork.c: Likewise.
* locks: Likewise.
* locks-tests: Likewise.
* locks.c: Likewise.
* race.c: Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2019-03-04 Svante Signell <svante.signell@gmail.com>
* file-lock.c: Make flock work regardless of the
mode in which the file was opened.
2019-02-12 Svante Signell <svante.signell@gmail.com>
* file-lock.c: Comment out "Make flock work without R or W mode"
2019-02-01 Svante Signell <svante.signell@gmail.com>
* Update copyright years.
* file-record-lock.c(netfs_S_file_record_lock):
Don't set rendezvous to MACH_PORT_NULL.
2017-01-05 Svante Signell <svante.signell@gmail.com>
* Update copyright years and headers.
* dir-lookup.c (netfs_S_dir_lookup): Call fshelp_rlock_tweak()
with new last argument rendezvous = MACH_PORT_NULL.
* file-lock.c (netfs_S_file_lock): Likewise.
* file-record-lock.c (netfs_S_file_record_lock): Likewise.
(netfs_S_file_record_lock): Add new argument mach_port_t rendezvous.
2016-05-23 Svante Signell <svante.signell@gmail.com>
* netfs.h (struct peropen): Change the type of rlock_status from
an int to a struct rlock_peropen.
(struct node): Change the type of userbox from a struct lock_box
to a struct rlock_box.
* dir-lookup.c (netfs_S_dir_lookup): Use fshelp_rlock_tweak.
* file-lock-stat.c (netfs_S_file_lock_stat): Total rewrite
around the new record locking functions.
* file-lock.c (netfs_S_file_lock): Likewise.
* file-record-lock.c (netfs_S_file_record_lock): Likewise.
* make-node.c (netfs_make_node): Initialize userbox with
fshelp_rlock_init.
* make-peropen.c (netfs_make_peropen): Initialize lock_status
using fshelp_rlock_po_init.
(netfs_make_peropen): Add a comment that po->refcnt starts at zero.
* relese-peropen.c (netfs_release_peropen): Release lock_status
using fshelp_rlock_drop_peropen.
2001-04-11 Neal H Walfield <neal@cs.uml.edu>
* file-record-lock.c: New file. Implement
netfs_S_file_record_lock.
* Makefile (SRCS): Add file-record-lock.c
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
2019-03-04 Svante Signell <svante.signell@gmail.com>
* file-lock.c: Make flock work regardless of the
mode in which the file was opened.
2019-02-12 Svante Signell <svante.signell@gmail.com>
* file-lock.c: Comment out "Make flock work without R or W mode"
2019-02-01 Svante Signell <svante.signell@gmail.com>
* Update copyright years.
* file-record-lock.c(diskfs_S_file_record_lock):
Don't set rendezvous to MACH_PORT_NULL.
2018-12-07 Svante Signell <svante.signell@gmail.com>
* Update copyright years.
* dir-lookup.c(diskfs_S_dir_lookup): Call fshelp_rlock_tweak()
with new last argument rendezvous = MACH_PORT_NULL.
* file-lock.c(diskfs_S_file_lock): Likewise.
* file-record-lock.c(diskfs_S_file_record_lock): Likewise.
(diskfs_S_file_record_lock): Add new argument mach_port_t rendezvous.
2017-01-05 Svante Signell <svante.signell@gmail.com>
* Update copyright years and headers.
2016-05-23 Svante Signell <svante.signell@gmail.com>
* file-lock-stat.c: Port from cthreads to libpthread.
* file-lock.c: Likewise.
* file-record-lock: Likewise.
2001-04-11 Neal H Walfield <neal@cs.uml.edu>
* Makefile (FSSRCS): Add file-record-lock.c.
* diskfs.h (struct peropen): Change the type of lock_status
from an int to a struct rlock_peropen.
(struct node): Change the type of userbox from a struct lock_box
to a struct rlock_box.
* dir-lookup.c (diskfs_S_dir_lookup): Use fshelp_rlock_tweak
as fshelp_acquire_lock is now depreciated.
* file-lock-stat.c (diskfs_S_file_lock_stat): Total rewrite
around the new record locking functions.
* file-lock.c (diskfs_S_file_lock): Total rewrite around the
new record locking functions.
* file-record-lock.c: New file. Implement
diskfs_S_file_record_lock.
* node-make.c (diskfs_make_node): Initialize userbox with
fshelp_rlock_init.
* peropen-make.c (diskfs_make_peropen): Initialize lock_status
using fshelp_rlock_po_init.
* peropen-rele.c (diskfs_release_peropen): Release lock_status
using fshelp_rlock_drop_peropen.
|