aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* ext2fs: support translators on non-hurd-created filesystemsSamuel Thibault2024-03-121-36/+44
| | | | | We are fine with only using xattr on filesystems that don't have the i_translator inode field.
* console-client: use xkbcommon instead of x11 for xkb extended supportEtienne Brateau2024-03-1019-5768/+452
| | | | | | | | | | | | | | | | | | This allow to reduce the dependencies, only xkbcommon (keyboard support only) is required instead of the whole x11 library + lex + yacc. This replacement allow to reduce the code size, now features are handled by xkbcommon itself. The functionnalites remain the sames (actions are reimplemented but in the code directly as it’s impossible to add custom actions). The custom xkb data files are removed as we can now directly use the standard ones from xkeyboard-config. The configuration to launch the console keyboard modules changed to now directly configure the model+layout+variat+options directly. Tested by compiling with and without xkbcommon. Tested X11 (ran i3 correctly). Composing is still working. Message-ID: <20240309234838.31923-1-etienne.brateau@gmail.com>
* console-client: use constant value instead of magic numberEtienne Brateau2024-03-091-1/+1
| | | | Message-ID: <20240309003840.586490-1-etienne.brateau@gmail.com>
* MAKEDEV: when creating devices, ensure the underlying files are either ↵Flavio Cruz2024-03-081-25/+39
| | | | | | | | | | | | | block/char devices or directories The perl test suite has a test where it reads all the block or char devices under /dev without following the translators. Then it compares it against a list of devices that read the translated nodes stat info. The patch changes how the the device files are created initially so that the stat information is identical and makes the Hurd environment appear more similar to other operating systems. Message-ID: <Zef__LrgPLXp9WHG@jupiter.tail36e24.ts.net>
* procfs: fix MemTotal 4G memory clamp on 32bit systemsSamuel Thibault2024-03-061-1/+4
| | | | Using vmstats allows to get up to 16T.
* ext2fs: New default: use xattrs to store translator recordsDamien Zammit2024-03-051-9/+9
| | | | | | | | | | Replaces experimental option --x-xattr-translator-records with --no-xattr-translator-records to allow rolling back to previous behaviour. NB: - Legacy records still work with either setting. - Adding a new record removes a legacy one.
* ext2fs: Check that the filesystem supports xattr before reading itDamien Zammit2024-03-041-10/+15
|
* libps: update ps_emit_nice_size_t to handle arbitrarily large size_tFlavio Cruz2024-03-031-9/+13
| | | | | | | Update argument types for sprint_frac_value to reflect how big they actually are so that GCC doesn't think it needs a larger buffer than necessary. Message-ID: <ZeS1i5u_OziWpApt@jupiter.tail36e24.ts.net>
* libbpf: avoid aborting on unknown instructionSamuel Thibault2024-03-011-1/+2
| | | | | | | Userland might load BPF programs with unknown instructions, we currently don't pre-check against that. In such a case, we shouldn't make netdde completely abort, and rather just return 0 like e.g. in the division by zero case.
* rumpdisk: do not open device if block size is 0Flavio Cruz2024-03-011-6/+17
| | | | | | | | | | | | | | | | | Currently, if we do: $ ls /dev/cd0/ The computer seems to get stuck, caused by the divide by 0 in the rumpdisk server in device_get_status. I noticed that if we have no disk in the cdrom device, we can still open it but block and media size will be 0 and the message "cd0 dos partition I/O error" will be printed to the console. To avoid this problem, we check the block size and throw an error when it is 0. This also works correctly when a disk actually exists. This should help fix the perl and likely the vim test suites that are currently failing in https://buildd.debian.org/. Message-ID: <Zd_8XjcHcbNIp5NM@mars.tail36e24.ts.net>
* Add proc_getchildren_rusage RPC and track rusage for children and descendantsFlavio Cruz2024-02-174-1/+19
| | | | Message-ID: <20240216182630.5770-2-flaviocruz@gmail.com>
* runsystem.hurd.sh: Refresh from runsystem.hurd.sh.inSamuel Thibault2024-02-081-10/+10
|
* runsystem: Check that /servers/socket/1 is really set upSamuel Thibault2024-02-082-2/+2
| | | | | | In case the image was built through a tarball, /servers/socket/1 might exist but not actually have been configured as pflocal translator. So better check that we do have a translator there, and fix it otherwise.
* runsystem.hurd.sh: Try to run bash firstSamuel Thibault2024-02-081-1/+1
| | | | | | Some systems have /bin/sh pointing to dash, which is even more stressful for users when running in an emergency. Better first try bash. Also try dash too in case /bin/sh is hosed.
* runsystem.hurd.sh: Print a newline at bootSamuel Thibault2024-02-081-0/+2
| | | | This helps debugging boot issues.
* runsystem.hurd.sh: Do not try to set up translators if we do not have settransSamuel Thibault2024-02-081-1/+1
|
* runsystem.hurd.sh: Make emergency really an emergencySamuel Thibault2024-02-081-2/+2
| | | | | emergency means we want to get a shell as quickly as possible, so we do not want any daemon at all.
* runsystem: Do not eat first parameterSamuel Thibault2024-02-082-4/+0
| | | | It has not been the kernel file name any more for a long time already.
* runsystem: Do not try to set up translators if we do not have settransSamuel Thibault2024-02-081-1/+1
|
* runsystem: Try to run bash firstSamuel Thibault2024-02-081-1/+1
| | | | | | Some systems have /bin/sh pointing to dash, which is even more stressful for users when running in an emergency. Better first try bash. Also try dash too in case /bin/sh is hosed.
* runsystem: do not require bashSamuel Thibault2024-02-082-9/+9
| | | | So that people can install just dash.
* Add missing includeSamuel Thibault2024-02-041-0/+1
| | | | for va_start etc.
* Update rpctrace to use the new ABI for inlined port namesFlavio Cruz2024-01-231-34/+59
| | | | Message-ID: <Za3wnF34kVU0r1TS@jupiter.tail36e24.ts.net>
* trivial hurd manual changes.jbranso@dismail.de2024-01-231-4/+15
| | | | | | | | * doc/hurd.texi (Special Files): added a reference to the zero store. * doc/hurd.texi (Translators): added a sentence about /dev/random. * doc/hurd.texi (Invoking 'mount'): added a short explanation. * doc/hurd.texi (Trivfs Callbacks): added @code{FSTYPE_MISC}. Message-ID: <20230921164822.9227-5-jbranso@dismail.de>
* add a FAT FS section to the hurd manual.jbranso@dismail.de2024-01-231-0/+9
| | | | | * doc/hurd.texi (FAT FS): new section. Message-ID: <20230921164822.9227-4-jbranso@dismail.de>
* describe the ISO-9960 filesystem in the hurd manual.jbranso@dismail.de2024-01-231-1/+4
| | | | | * doc/hurd.texi (ISO-9960): I added in a short explanation. Message-ID: <20230921164822.9227-3-jbranso@dismail.de>
* add a short ext2fs description to the hurd manual.jbranso@dismail.de2024-01-231-2/+12
| | | | | * doc/hurd.texi (Linux Extended 2 FS): added a short description. Message-ID: <20230921164822.9227-2-jbranso@dismail.de>
* describe fixing filesystem corruption in the hurd manual.jbranso@dismail.de2024-01-231-2/+51
| | | | | | | * doc/hurd.texi (Repairing Filesystems): described fixing filesystem corruption. * doc/hurd.texi (Shutdown): added the hurd specific halt-hurd command. Message-ID: <20230921164822.9227-1-jbranso@dismail.de>
* x86_64: utmp uses int32_t to store time so use a temporary variableFlavio Cruz2023-12-311-1/+6
| | | | Message-ID: <ZZBGYmkYNwpoamBm@jupiter.tail36e24.ts.net>
* pfinet: fix type aliasFlavio Cruz2023-12-291-1/+1
| | | | Message-ID: <20231229212105.858759-11-flaviocruz@gmail.com>
* libftpconn: add out >= 2 condition to make GCC happyFlavio Cruz2023-12-291-1/+1
| | | | Message-ID: <20231229212105.858759-10-flaviocruz@gmail.com>
* Fix overflow issues in tmpfs and vmallocateFlavio Cruz2023-12-292-3/+6
| | | | Message-ID: <20231229212105.858759-9-flaviocruz@gmail.com>
* proxy-defpager: add missing return statementFlavio Cruz2023-12-291-0/+2
| | | | Message-ID: <20231229212105.858759-8-flaviocruz@gmail.com>
* Fix a few pointer related warnings.Flavio Cruz2023-12-292-3/+3
| | | | Message-ID: <20231229212105.858759-7-flaviocruz@gmail.com>
* x86_64: use 21 bytes in libps since %z might require more characters.Flavio Cruz2023-12-291-1/+1
| | | | | This makes GCC happy. Message-ID: <20231229212105.858759-6-flaviocruz@gmail.com>
* Fix printf format specifiersFlavio Cruz2023-12-292-2/+2
| | | | Message-ID: <20231229212105.858759-4-flaviocruz@gmail.com>
* Use mach_msg_type_number_t whenever required to avoid warningsFlavio Cruz2023-12-296-12/+15
| | | | Message-ID: <20231229212105.858759-3-flaviocruz@gmail.com>
* Cast bootinfo to struct diskfs_control * to silence warningFlavio Cruz2023-12-291-1/+1
| | | | Message-ID: <20231229212105.858759-2-flaviocruz@gmail.com>
* Initialize a few error variables to avoid GCC warningsFlavio Cruz2023-12-293-3/+3
| | | | Message-ID: <20231229212105.858759-1-flaviocruz@gmail.com>
* Mark msg_thread as noreturnFlavio Cruz2023-12-291-1/+1
| | | | Message-ID: <20231229161211.312389-3-flaviocruz@gmail.com>
* Replace deprecated sigmask with sigset_t callsFlavio Cruz2023-12-295-12/+32
| | | | Message-ID: <20231229161211.312389-2-flaviocruz@gmail.com>
* pfinet and pci-arbiter: update server handlers to return kern_return_t to ↵Flavio Cruz2023-12-297-73/+73
| | | | | | fix -Werror=enum-int-mismatch warnings Message-ID: <20231229161211.312389-1-flaviocruz@gmail.com>
* Update server handlers to return kern_return_error to fix ↵Flavio Cruz2023-12-17122-293/+293
| | | | | | | -Werror=enum-int-mismatch warnings MiG expects those to return kern_return_t. Message-ID: <ZXqbbXpVqQAwd2qv@jupiter.tail36e24.ts.net>
* Update hurd code to handle the new ABI for sending inlined port rights.Flavio Cruz2023-12-172-11/+13
|
* Revert "Update hurd code to handle the new ABI for sending inlined port rights."Samuel Thibault2023-12-032-13/+11
| | | | This reverts commit 33c30b4ff76ca22bdedce4aa41d05736a546d86b.
* Update hurd code to handle the new ABI for sending inlined port rights.Flavio Cruz2023-12-032-11/+13
| | | | Message-ID: <20231124213041.952886-3-flaviocruz@gmail.com>
* lwip: Allocate the loopback netif by defaultJoan Lledó2023-12-021-7/+7
| | | | | | | | | | | | | | | | | | | | | The translator received a null `netif_list` during initialization, this caused a few bugs. When started without parameters, the translator didn't add any new interface to `netif_list`, and that broke any subsequent fsysopts over the translator, as the stack was being initialized again instead of being reconfigured. DHCP was broken because the translator is usually installed without parameters, which are supposed to be added by the DHCP client through fsysopts. The absence of an allocated `netif_list` also prevented configuring a loopback interface. After these changes, starting the translator always allocates one interface and configures it as loopback. Message-ID: <20231202101401.11542-2-jlledom@mailfence.com>
* libports: Make sure we don't leak current RPCs listsSamuel Thibault2023-11-261-0/+2
|
* libports: Force threads to wake up periodicallySamuel Thibault2023-11-261-5/+8
| | | | | | | | | | | | | | | | Quiescence support in port-deref-deferred.c assumes that all threads will sooner or later go through a quiescent state (because it finished processing a message). But that is not true: proc doesn't set a thread timeout, and thus some threads can stay indefinitely stuck in receiving messages. And thus the deferred dereferencing used by ports_destroy_right never gets achieved. This accumulation can be seen by running: while true ; do echo $(echo -n $(echo a)) > /dev/null ; done while running vminfo 4 | wc -l in parallel. Making threads get out of mach_msg at least periodically allows unstucking quiescence generations.
* libports: Add more assertionSamuel Thibault2023-11-261-0/+2
| | | | | flip_generations needs to make sure it is not throwing away a list of objects to be released.