Age | Commit message (Collapse) | Author |
|
|
|
* truncate.c (diskfs_truncate): Use & instead of %.
|
|
* inode.c (write_all_disknodes): Call diskfs_set_node_times after
pokel_sync, since it might delay a little.
(write_node): Remove assert that dn_set_mtime et al are clear.
It is ok if they are set in parallel, because the latter setting
will be carried out eventually.
|
|
* node-times.c (diskfs_set_node_times): Make individual flag checks
race-proof so we don't lose any flag settings.
|
|
* ops.c (op_readlink): Before returning, check if the buffer
pointed to by transp is ours. If not, munmap it.
(op_read): Likewise for bp.
(op_readdir): Don't alloca a buffer here. Instead initialize
BUF and BUFSIZE to 0 and let the server (eh, MiG) do it.
munmap BUF before returning.
|
|
* cache.c (scan_creds): Move I inside for-statement.
Replace inner for-loop with a while-loop. New variable
NEXT_I set to I->NEXT, because we might free I.
Set I to NEXT_I at end of while block.
Move update of leastidlastuse inside if block, because
otherwise we will constantly prevent ourself from scanning.
(scan_fhs): Very much the same.
(scan_replies): Likewise. Also free CR.
(check_cached_reply): Make HASH value absolute (as XID can be
negative, and thus the modulus).
Initialize REFERENCES to 1.
|
|
2000-11-30 Marcus Brinkmann <marcus@gnu.org>
* dir.c (diskfs_lookup_hard): If name is too long, clear
DS before returning ENAMETOOLONG.
pfinet:
2000-11-02 Marcus Brinkmann <marcus@gnu.org>
* tunnel.c (trivfs_S_io_get_owner): Add return type to silence
compiler warning.
|
|
|
|
* changelog: Update to reflect Debian upgrade.
* rc: New file.
* rules: Install rc.
* control: Add Build-Depends.
|
|
The last two changes introduced two new inode overlaps
(file_start was not shifted by store block size, and directories'
shifted file_start offset can be the same as the struct dirrect
offset of their first directory entry).
* inode.c (use_file_start_as_id): New function to determine
if to use file_start or struct dirrect * as node id.
The directory recognition code comes from read_disknode.
(cache_inode): Use use_file_start_as_id instead doing the work
ourselve. Shift file_start by store->log2_block_size.
(load_inode): Likewise.
* lookup.c (diskfs_get_directs): Likewise.
Declare use_file_start_id.
|
|
* ops.c (netfs_attempt_mkdir): Add casts -1 -> (struct iouser *) -1
to silence gcc warning.
(netfs_attempt_create_file): Likewise.
|
|
Fix hard link handling for non-zero length files.
* inode.c: Fix comment about inode numbers.
(node_cache): New member ID to store unique identifier.
(inode_cache_find): Change RECORD arg into ID and compare it
with id member of node_cache.
(cache_inode): Swap order of args and add new arg RR (change dr
into record along the way). Use RR to find out cache ID.
Use id member of node_cache to look for ID. Cache ID.
(load_inode): Call inode_cache_find with correct ID, depending
on RR and file size. Frob arguments to cache_inode to comply with
the new definition.
(read_disknode): Set st_ino according depending on RR and file size.
* lookup.c: Doc spelling fix.
(diskfs_get_directs): Include code again that was removed by last change,
but use it only if not symlink or zero length file.
|
|
Closes Debian Bug #68417:
* rr.c (rrip_work): In helper function add_comp set targused to
zero after malloc, and loop over realloc in case doubling is not
enough. After finalizing the link, set VALID_SL valid flag.
* inode.c (read_disknode): For links use rl->target instead
rl->name.
Closes Debian Bug #69281: Don't use file_start as inode numbers,
but the offset of the directory record in disk_image. This is what
Linux 2.4 does.
* isofs.h (struct disknode): New member struct dirrect *dr.
* inode.c: Fix comment about inode numbers.
(struct node_cache): Fix comment about file_start (it's not unique).
In fact, file_start is invalid for symlinks, and only stored here
for convenience. Maybe caching file_start can be avoided by
rearranging the code.
(inode_cache_find): Change first argument from off_t file_start
to struct dirrect *dr and fix the doc.
Compare cached value of DR with this argument, instead FILE_START.
(diskfs_cached_lookup): Set DR member of DN.
(load_inode): Call inode_cache_find with RECORD instead FILE_START.
Set DR member of DN.
(read_disknode): Set inode number to DR - DISK_IMAGE instead
FILE_START.
* lookup.c (diskfs_get_directs): Remove variable file_start.
Don't calculate file_start. Set D_FILENO to EP - DISK_IMAGE
instead FILE_START.
|
|
* hurd_types.h: Doc fix reported by Neal H Walfield
(neal@cs.uml.edu), STORAGE_NULL is actually STORAGE_ZERO.
|
|
* wire.c: Include <error.h>.
|
|
|
|
* wire.c (map_extent): Pass second arg of RTLD_NOLOAD to dlopen.
(RTLD_NOLOAD): Define macro to zero if undefined.
|
|
|
|
* wire.c (map_extent): Rewrite using dlsym on library's _end symbol.
|
|
* devprobe.c (main): Call device_close before freeing the device
port.
|
|
* Makefile (SRCS): Add tunnel.c
* tunnel.c: New file.
* linux-src/net/ipv4/devinet.c (configure_device): New argument PEER.
Implement support for setting the destination address for
point-to-point interfaces.
(inquire_device): New argument PEER.
Implement support to get the destination address.
* main.c: Include fcntl.h.
Update prototype of configure_device.
Set trivfs_support_read and trivfs_support_write to 1, as we support
those in some cases now. For the same reason, set trivfs_allow_open
to O_READ | O_WRITE.
(pfinet_demuxer): If the port is not in the socketport_class,
don't try io_server (so requests for trivfs are not catched too early).
(find_device): Use setup_tunnel_device for tun* interfaces.
(main): Add peer argument to configure_device call for the lo interface.
* options.c: Update prototypes for configure_device, inquire_device.
(options): Add --peer option.
(stuct parse_interface): Add peer member.
(parse_hook_add_interface): Initialize peer.
(parse_opt): Add a case for --peer.
Add peer argument to configure_device call.
(add_dev_opts): Add peer variable, add it to inquire_device call arguments.
Check for peer argument and add it to command line if it is there.
* pfinet.h: Add prototype for setup_tunnel_device.
|
|
* Makefile (SRCS): Add dummy.c
* dummy.c: New file.
* ethernet.c: Moved ETHER_PORT, READPT, READPTNAME to ...
(struct ether_device): ... here. New struct. ETHER_DEV is now a
pointer to a struct ether_device.
(ethernet_demuxer): New variables edev, dev. Iterate over linked
list ETHER_DEV to find correct readptname. Use dev instead
ETHER_DEV for socket buffer manipulation.
(ethernet_open): New variable edev. Use dev->priv to find correct
edev. Use members of edev instead global variables.
(ethernet_xmit): New variable edev. Use dev->priv to find correct
edev.Use member of edev instead global variable ETHER_PORT.
(setup_ethernet_device): New output argument DEVICE. New
variables edev and dev. Allocate memory for edev, add it to the
head of ETHER_DEV. Use dev instead ETHER_DEV. Use members of edev
instead global variables.
* main.c: ALREADY_OPEN removed.
(find_device): Fix comment. Redone to work with multiple devices
by iterating over DEV_BASE.
(enumerate_device): Likewise.
* pfinet.h: Add new argument to prototype of
setup_ethernet_device. Add prototype for setup_dummy_device.
Remove prototype for ETHER_DEV. Add prototype for DEV_BASE.
|
|
|
|
* inode.c (write_node): Use memcpy instead of a loop.
|
|
|
|
* exec.c: Comments.
2000-09-24 Roland McGrath <roland@frob.com>
* exec.c (map): Bail if the requested position + data size does not
fit in the file size.
|
|
* main.c: Prototype configure_device to supress compiler warning.
|
|
S_IFIFO as `magic' protocols.
|
|
allows implementation of POSIX pipes by using a S_IFSOCK protocol.
* sock.h: Include <sys/types.h>.
(struct sock): Add new member `mode'.
(sock_create): Add new parameter `mode'.
* sock.c (sock_create): Initialize `mode' member of struct sock,
with new parameter.
* pf.c (S_socket_create): Pass file type/mode to sock_create based
on PROTOCOL.
* io.c (S_io_stat): Use new member of `struct sock' to set
ST->st_mode.
|
|
* portinfo.c: Comment out unimplemented argument
`--show-targets'. Reported by
Marcus.Brinkmann@ruhr-uni-bochum.de.
|
|
|
|
SELECT_WRITE.
(POLLHUP): Define as SELECT_READ.
|
|
that gives other bottom halves a chance to run; the network bottom
half is the only one present in pfinet.
|
|
comes before the ports lib. This makes sure the functions in
libthreads properly override the stubs in libports with the new
dynamic linker semantics in glibc 2.2.
|
|
the ports lib. This makes sure the functions in libthreads
properly override the stubs in libports with the new dynamic
linker semantics in glibc 2.2.
|
|
comes before the ports lib. This makes sure the functions in
libthreads properly override the stubs in libports with the new
dynamic linker semantics in glibc 2.2.
|
|
comes before the ports lib. This makes sure the functions in
libthreads properly override the stubs in libports with the new
dynamic linker semantics in glibc 2.2.
|
|
comes before the ports lib. This makes sure the functions in
libthreads properly override the stubs in libports with the new
dynamic linker semantics in glibc 2.2.
|
|
comes before the ports lib. This makes sure the functions in
libthreads properly override the stubs in libports with the new
dynamic linker semantics in glibc 2.2.
* truncate.c (trunc_indirect): Add missing argument to
pager_flush_some.
|
|
comes before the ports lib. This makes sure the functions in
libthreads properly override the stubs in libports with the new
dynamic linker semantics in glibc 2.2.
|
|
comes before the ports lib. This makes sure the functions in
libthreads properly override the stubs in libports with the new
dynamic linker semantics in glibc 2.2.
|
|
* truncate.c (trunc_indirect): Add missing argument to pager_flush_some.
|
|
hurd_thread_cancel on the current thread.
* inhibit-class-rpcs.c (ports_inhibit_class_rpcs): Likewise.
* inhibit-bucket-rpcs.c (ports_inhibit_bucket_rpcs): Likewise.
* inhibit-port-rpcs.c (ports_inhibit_port_rpcs): Likewise.
|
|
* truncate.c (trunc_indirect): Before freeing an indirect block,
remove it from the disk pager's kernel cache.
|
|
* priv.h (PM_WRITEWAIT): New pagemap bit.
* data-return.c (_pager_do_write_request): Don't proceed with a
pageout if one is already in progress. Once we finish, wake up
any potential PM_WRITEWAIT waiters.
* priv.h (PM_INIT): Provide value again.
* data-return.c (_pager_do_write_request): Track PM_INIT again.
* priv.h (struct pager): Make pagemap consist of 16-bit elements
instead of only 8 bits.
* data-request.c (_pager_seqnos_memory_object_data_request):
Make PM_ENTRY a short pointer.
* data-return.c (_pager_do_write_request): Make PM_ENTRIES a short
pointer.
* lock-object.c (_pager_lock_object): Make PM_ENTRIES a short
pointer.
* mark-error.c (_pager_mark_next_request_error): Make P a short
pointer.
(_pager_mark_object_error): Likewise.
* offer-page.c (pager_offer_page): Make PM_ENTRY a short pointer.
* object-terminate.c (_pager_free_structure): Interpret
pagemapsize correctly.
* pagemap.c (_pager_pagemap_resize): Likewise.
|
|
* hashexec.c (check_hashbang): Count characters in interp
correctly. Fix from Kalle Olavi Niemitalo <tosi@stekt.oulu.fi>.
|
|
* mux.c (free_name): Fix typo in comment.
* usermux.c: Likewise.
* usermux.h: Likewise
(struct usermux): Likewise.
|
|
* io-seek.c (diskfs_S_io_seek): Don't use CHANGE_NODE_FIELD
anymore; it was causing problems and was a gross hack anyway.
|
|
* changelog: Update to reflect Debian uploads.
* rules: Use install_script to install scripts.
Don't check for shared libraries in scripts.
2000-01-30 Marcus Brinkmann <marcus@gnu.org>
* changelog: Update to reflect Debian uploads.
|
|
change, and my change to the toplevel configure.in that disables
versioning for the old stdio-using libc.
|