L29Ah
log 9p быдлокодинг В linux-5.7 приняли мой фикс для драйвера 9P-файловых систем: теперь при использовании неблокирующих fd файловая система не дожидается полного заполнения предоставленного программой буфера, а отдаёт то что есть после ответа сервера, какого бы размера он ни был, что позволяет использовать синтетические файловые системы с непредсказуемыми задержками. Например, hatexmpp3, где файл это лог чатика, и в случае отсутствия сообщения по запрошенному смещению read(2) блокируется до появления нового.
L29Ah
Linux 9p ? Какой 9P-сервер для раздачи куска локальной фс нынче норм? Помню u9fs дико память жрал, щас есть чо полущ?
Annoynimous
Linux 9p RAGE github.com

[10:22:45]<L29Ah_> а ещё у прыщей поменялся синтаксис dial'ов для 9p
[10:23:25]<L29Ah_> о чём символизирует крайне информативное сообщение в логе:
[12773.145511] 9pnet: p9_fd_create_unix (19482): problem connecting socket: unix!/tmp/npttest: -2

А ещё в 9umount обнаружился ещё какой-то баг, который я пока не смог воспроизвести из-за цирка с suid :/
Annoynimous
9p ? Haskell Норм придумал?

type IOObject a = (IO a, a -> IO ())

— FIXME sane errors
heterObj :: IOObject a -> IOObject a -> IOObject a
heterObj a b = (fst a, snd b)

nulls :: IOObject a
nulls = (throw $ Underflow, const $ return ())

chans :: Chan a -> IOObject a
chans a = (readChan a, writeChan a)

type DataTypeObject a = (a -> ByteString, ByteString -> a)

lazyByteStrings :: DataTypeObject ByteString
lazyByteStrings = (id, id)

showBool True = "true"
showBool False = "false"
readBool s
| s == "1" = True
| s == "true" = True
| s == "0" = False
| s == "false" = False
booleans :: DataTypeObject Bool
booleans = (showBool, readBool)

simpleFile :: forall a m. (Monad m, EmbedIO m)
=> String
-> IOObject a
-> DataTypeObject a
-> NineFile m
simpleFile name (rd, wr) (rdc, wrc) = (boringFile name :: NineFile m) {
read = simpleRead $ liftM rdc $ rd,
write = simpleWrite $ wr . wrc
}
Annoynimous
9p Котики, придумайте мне простенькую и полезненькую синтетическую файловую систему, которую можно было бы реализовать для теста либы, позязя.
Annoynimous
9p Haskell Ищу хаскелебыдлокодеров, желающих принять участие в написании высокоуровневой библиотеки серверной стороны протокола 9P2000. Обращаться в #sh.nexuiz на QuakeNet.
mrmcc
ня Линупс 9p говно % ls /bus/wpas/
total 0
-rw------- 1 muromec muromec 0 Jun 26 05:27 debug
drwx------ 1 muromec muromec 0 Jun 26 05:27 iface/
drwx------ 1 muromec muromec 0 Jun 26 05:27 net/
-rw------- 1 muromec muromec 0 Jun 26 05:27 status

% ls /bus/wpas/net
% ls /bus/wpas/iface
wlan0/
% ls /bus/wpas/iface/wlan0
current_ssid ifname state
% cat /bus/wpas/iface/wlan0/ifname
wlan0%
% cat /bus/wpas/iface/wlan0/state
COMPLETED%

via github.com