Hi all,
yesterday, I replaced the broken network card in my server machine at home running Leap 15.1. Old NIC was onboard e1000e, 8086:10df, new NIC is pci-e r8169, 10ec:8168
Everything looked good so far, but I wondered why the web pages served from apache on this host looked a bit "simple" :-). Something like "script generated content delivered, but static content missing".
I could not find anything in apache logs, so I resorted to stracing it with a simple request that returned nothing:
| seife@strolchi:~> curl -v http://server/owncloud/core/img/loading-dark.gif | * Trying 192.168.200.1:80... | * TCP_NODELAY set | * Connected to server (192.168.200.1) port 80 (#0) | > GET /owncloud/core/img/loading-dark.gif HTTP/1.1 | > Host: server | > User-Agent: curl/7.68.0 | > Accept: */* | > | * Mark bundle as not supporting multiuse | < HTTP/1.1 200 OK | < Date: Sat, 22 Feb 2020 09:08:59 GMT | < Server: Apache/2.4.33 (Linux/SUSE) | < Last-Modified: Wed, 03 Jul 2019 11:17:17 GMT | < ETag: "90c-58cc501036940" | < Accept-Ranges: bytes | < Content-Length: 2316 | < Content-Type: image/gif | < | * transfer closed with 2316 bytes remaining to read | * Closing connection 0 | curl: (18) transfer closed with 2316 bytes remaining to read
The strace output contained: [pid 16528] openat(AT_FDCWD, "/srv/www/htdocs/owncloud/core/img/loading-dark.gif", O_RDONLY|O_CLOEXEC) = 22 [pid 16528] read(21, 0x5587151055c8, 8000) = -1 EAGAIN (Resource temporarily unavailable) [pid 16528] setsockopt(21, SOL_TCP, TCP_CORK, [1], 4) = 0 [pid 16528] writev(21, [{iov_base="HTTP/1.1 200 OK\r\nDate: Sat, 22 F"..., iov_len=234}], 1) = 234 [pid 16528] sendfile(21, 22, [0], 2316) = -1 EOPNOTSUPP (Operation not supported) [pid 16528] setsockopt(21, SOL_TCP, TCP_CORK, [0], 4) = 0 [pid 16528] write(15, "192.168.200.12 - - [22/Feb/2020:"..., 126) = 126
==> sendfile EOPNOTSUPP
I looked into the apache config, found /etc/apache2/server-tuning.conf where "EnableSendfile on" was configured, changed that to "off", restarted apache and everything is fine again.
Now I'm just wondering what could have caused this to happen. The filesystem on /srv is XFS, underlying blockdevice is bcache and this has worked before without a problem. I cannot remember changing anything else than adding the new network card, but it is of course possible that I did (accidentally) change something since last reboot.
(and of course, apache should not fail silently, but that's another bug to report)
Any hints?
Thanks,
seife
On 2/22/20 10:28 AM, Stefan Seyfried wrote:
Hi all,
yesterday, I replaced the broken network card in my server machine at home running Leap 15.1. Old NIC was onboard e1000e, 8086:10df, new NIC is pci-e r8169, 10ec:8168
Everything looked good so far, but I wondered why the web pages served from apache on this host looked a bit "simple" :-). Something like "script generated content delivered, but static content missing".
I could not find anything in apache logs, so I resorted to stracing it with a simple request that returned nothing:
| seife@strolchi:~> curl -v http://server/owncloud/core/img/loading-dark.gif | * Trying 192.168.200.1:80... | * TCP_NODELAY set | * Connected to server (192.168.200.1) port 80 (#0) | > GET /owncloud/core/img/loading-dark.gif HTTP/1.1 | > Host: server | > User-Agent: curl/7.68.0 | > Accept: */* | > | * Mark bundle as not supporting multiuse | < HTTP/1.1 200 OK | < Date: Sat, 22 Feb 2020 09:08:59 GMT | < Server: Apache/2.4.33 (Linux/SUSE) | < Last-Modified: Wed, 03 Jul 2019 11:17:17 GMT | < ETag: "90c-58cc501036940" | < Accept-Ranges: bytes | < Content-Length: 2316 | < Content-Type: image/gif | < | * transfer closed with 2316 bytes remaining to read | * Closing connection 0 | curl: (18) transfer closed with 2316 bytes remaining to read
The strace output contained: [pid 16528] openat(AT_FDCWD, "/srv/www/htdocs/owncloud/core/img/loading-dark.gif", O_RDONLY|O_CLOEXEC) = 22 [pid 16528] read(21, 0x5587151055c8, 8000) = -1 EAGAIN (Resource temporarily unavailable) [pid 16528] setsockopt(21, SOL_TCP, TCP_CORK, [1], 4) = 0 [pid 16528] writev(21, [{iov_base="HTTP/1.1 200 OK\r\nDate: Sat, 22 F"..., iov_len=234}], 1) = 234 [pid 16528] sendfile(21, 22, [0], 2316) = -1 EOPNOTSUPP (Operation not supported) [pid 16528] setsockopt(21, SOL_TCP, TCP_CORK, [0], 4) = 0 [pid 16528] write(15, "192.168.200.12 - - [22/Feb/2020:"..., 126) = 126
==> sendfile EOPNOTSUPP
I looked into the apache config, found /etc/apache2/server-tuning.conf where "EnableSendfile on" was configured, changed that to "off", restarted apache and everything is fine again.
Now I'm just wondering what could have caused this to happen. The filesystem on /srv is XFS, underlying blockdevice is bcache and this has worked before without a problem. I cannot remember changing anything else than adding the new network card, but it is of course possible that I did (accidentally) change something since last reboot.
(and of course, apache should not fail silently, but that's another bug to report)
Any hints?
How very curious.
Care to open a bug and move it over to Denis Kirjanov, putting me and Michal Kubecek into Cc?
Seems we want to look at it more closely...
Cheers,
Hannes
Good morning Hannes,
Am 22.02.20 um 10:45 schrieb Hannes Reinecke:
On 2/22/20 10:28 AM, Stefan Seyfried wrote:
==> sendfile EOPNOTSUPP
I looked into the apache config, found /etc/apache2/server-tuning.conf where "EnableSendfile on" was configured, changed that to "off", restarted apache and everything is fine again.
Any hints?
How very curious.
Care to open a bug and move it over to Denis Kirjanov, putting me and Michal Kubecek into Cc?
Done, https://bugzilla.opensuse.org/show_bug.cgi?id=1164617
Seems we want to look at it more closely...
I also became more curious, as your answer seemed to imply that it was not entirely my fault ;-)
It works with Kernel:stable's kernel-default 5.5.5, will try the Leap 15.2 beta kernel next.
Am 22.02.20 um 11:47 schrieb Stefan Seyfried:
It works with Kernel:stable's kernel-default 5.5.5, will try the Leap 15.2 beta kernel next.
15.2 5.3.18 also works well.
Maybe that's a hint to upgrade the machine to 15.2 beta ;-)