Age | Commit message (Collapse) | Author |
|
In case the task dies very early and thus the notification arrives very
early.
|
|
mach_port_t are mach_port_name_t and thus require %u instead of %lu.
Message-Id: <Y42RELMbulK4xaKM@reue>
|
|
instead of just exiting: better print a backtrace so we get to know what
happened.
|
|
Whenever a Hurd essential task crashes, startup just reboots the system
since there's not much that can be done at that point. When we have a
kernel debugger, however, we could at least get crashing information, so
let's make Hurd's startup tell the kernel which tasks are essential, so
it can trigger the debugger whenever they crash.
|
|
So we get to know why the system gets stuck if mach-defpager happens to
die.
|
|
true structs
Message-Id: <Y3BpLsrddifLOR1z@viriathus>
|
|
hurd/hurd_types.defs is already included through ioctl_types.defs.
Message-Id: <Y3HUZ3KzKnCchYvI@viriathus>
|
|
Also change type srtentry_t to use the new struct format.
Message-Id: <Y3CKiDS3wszn0G4a@viriathus>
|
|
mig is incorrectly initializing basic types twice (init_type) for kernel
user and kernel server definitions. To fix this bug, we should
initialize the types during a subsystem directive only. This commit
ensures all hurd definitions have subsystem at the very start so that
these definitions work correctly with a patched mig.
Message-Id: <Y3B/9ZCdqYCcd/zf@viriathus>
|
|
Message-Id: <Y23Sua0dRTrqcxZl@viriathus>
|
|
Message-Id: <Y2s/UPSCuGap3cv6@viriathus>
|
|
Message-Id: <Y2NNAegVOKg/X7OC@viriathus>
|
|
Message-Id: <20221105141505.4684-1-rbraun@sceen.net>
|
|
As explained on
https://www.gnu.org/software/automake/manual/html_node/Multiple-Outputs.html
a b: c
foo -o a -o b
is actually equivalent to
a: c
foo -o a -o b
b: c
foo -o a -o b
and can thus break in parallel builds, since the foo command may then be
called twice. Also, we are here using pattern rules. The automake manual
contains various levels of fixing this, using a mere stamp file should
be enough for us.
|
|
To allow cross-builds which cannot use AC_LINK_IFELSE at all.
|
|
To allow cross-builds which cannot use AC_CHECK_LIB at all.
|
|
* sutils/fstab.c (fstab_find_device): Do not realpath "procfs" pseudo-device.
|
|
|
|
|
|
|
|
|
|
Message-Id: <20220922004105.961869-1-damien@zamaudio.com>
|
|
Message-Id: <20220922004018.961808-1-damien@zamaudio.com>
|
|
Unfortunately the Linux source also uses <net/route.h>, so we have to
both make that include the glibc-provided one, and avoid making it emit
Linuxish definitions when they would conflict with glibc definitions.
|
|
|
|
This makes acpi usable as a bootstrap translator.
Message-Id: <20220920030035.931113-1-damien@zamaudio.com>
|
|
Message-Id: <20220912103837.556815-5-damien@zamaudio.com>
|
|
This allows clean shutdown of all modern x86 machines
(not just qemu) by using the acpi translator to call
into libacpica code.
Message-Id: <20220912103837.556815-3-damien@zamaudio.com>
|
|
Provides two new acpi RPCs to sleep the machine and
to get the irq of any pci device. ACPI mode is enabled
by default when the translator is started.
NB: Merging this commit means libacpica is a build dep.
Message-Id: <20220912103837.556815-2-damien@zamaudio.com>
|
|
This fixes a known race condition in bootstrapping by
separating the fsys_startup call from the server demuxer loop
into two separate functions that the caller can decide
when to call.
Message-Id: <20220908093229.499494-1-damien@zamaudio.com>
|
|
Message-Id: <20220908093034.499415-1-damien@zamaudio.com>
|
|
Message-Id: <20220909094234.517165-1-damien@zamaudio.com>
|
|
After much digging this fixes the new routing ioctls
Message-Id: <20220831143032.401732-1-damien@zamaudio.com>
|
|
|
|
This completes 5adb4b834b1e
|
|
|
|
stdout/err could shut down for whatever reason (killed the term on
/dev/console or whatever). We should not crash just because we lost our
ability to print output.
|
|
|
|
Using a new client side <net/route.h>
I was able to clean up the existing options.c in pfinet
and add two new ioctls for adding/deleting network routes.
/* move to bits/ioctl.h */
struct ifrtreq {
char ifname[IFNAMSIZ];
in_addr_t rt_dest;
in_addr_t rt_mask;
in_addr_t rt_gateway;
int rt_flags;
int rt_metric;
int rt_mtu;
int rt_window;
int rt_irtt;
int rt_tos;
int rt_class;
};
Message-Id: <20220829102952.369798-1-damien@zamaudio.com>
|
|
Message-Id: <20220829193617.13481-1-etienne.brateau@gmail.com>
|
|
|
|
Build was broken since 6d3b4cea78b22a6562eef4256cfcc40a8d372194
Message-Id: <20220827224239.54097-1-etienne.brateau@gmail.com>
|
|
|
|
The scenario is:
- process running inside fakeroot exec()s
- fakeroot forwards the exec call
- exec starts thrashing the previous process, and notably close its
ports
- the send port that pointed to fakeroot is thus closed
- fakeroot thus receives a no-senders notification
- its libports thus interrupts the current RPC on it, i.e. the exec(),
because it thinks that the caller is no more, but that was exactly the
point of the exec()...
- exec tries to interrupt its own RPCs, at best the execution will fail,
at worse the process is already thrashed and there's nothing better
than burying it for good.
The symptom is processes running inside fakeroot seeming randomly
crashing with SIGKILL.
Making fakeroot keep a send right avoids the no-senders notification,
thus the whole interruption (which was meaningless).
|
|
|
|
Basically it is an automation of this:
http://walfield.org/pub/people/neal/papers/hurd-misc/manual-bootstrap.txt
To launch a storeio translator on FILE:
$ storeio -d FILE -T TYPE ARG
Message-Id: <20170126213616.26846-1-luca.dariz@gmail.com>
|
|
The previous master may have gone before all previous slaves have gone. If a
slave gets stuck, TTY_OPEN will kept set, and there would be no reset performed
in open_hook, thus leaking tty state and data.
|
|
|
|
* pci-arbiter/device_map.h:
* pci-arbiter/device_map.c:
* New function: device_map_rom
* Copies the whole rom in the arbiter space.
* pci-arbiter/pcifs.h:
* struct pcifs_dirent:
* New field to store the mapping address for each device rom.
o pci-arbiter/func_files.h:
* pci-arbiter/func_files.c:
* read_rom_file:
* Retrieves the rom contents from the local space instead of
libpciaccess.
* pci-arbiter/netfs_impl.c:
* netfs_attempt_read:get_filemap_region
* Update call to read_rom_file.
* get_filemap_region:
* Uses the old code at netfs_get_filemap to get a proxy to
the device memory region.
* get_filemap_rom:
* Returns a proxy to the locally mapped device rom.
* netfs_get_filemap:
* Checks the requested file to map and calls get_filemap_rom,
get_filemap_region or returns en error.
Message-Id: <20220815161520.6059-2-jlledom@mailfence.com>
|
|
This is to be defined in the glibc header.
|