並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 16 件 / 16件

新着順 人気順

hibomaの検索結果1 - 16 件 / 16件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

hibomaに関するエントリは16件あります。 linuxkernelcgroup などが関連タグです。 人気エントリには 『内的キャリアと自分の中で大切に思っている専門書 - hibomaの日記』などがあります。
  • 内的キャリアと自分の中で大切に思っている専門書 - hibomaの日記

    技術・キャリアに関する文章です 追記 内容を省みて 技術書 から 専門書 に訂正した。 イントロ 先だってペパボ社内の「CTOが訊く」 という企画で、あんちぽくん ( id:antipop ) とzoom 対談する機会があった。「CTOが訊く」はペパボ社の技術職のメンバーに対談を回していく企画で(*1) 、事前にテーマが何か決まってる訳でもなく 、あんちぽくんと何の話をしてもいい。 私は 外的キャリア/内的キャリア/キャリアンカー をテーマにして話をした (対談の内容を公開できないまんま このエントリを書いてるのは申し訳ない ) 外的キャリア 職種・職位・技能・実績・報酬など客観的に把握できる職業上の経歴。→内的キャリア 外的キャリアとは - コトバンク 内的キャリア なぜ働くのか、何のために働くのか、なぜその仕事をしたいのかなど、仕事や働き方に対する個人の主観的な評価や認識。 内的キャリ

      内的キャリアと自分の中で大切に思っている専門書 - hibomaの日記
    • UNIX Domain Socket の SO_SNDBUF, SO_RCVBUF についての覚書 - hibomaの日記

      macOS と Linux の UNIX Domain Socket の SO_SNDBUF, SO_RCVBUF について調べていた。 経緯 会社で @kurotaky のトラブルシューティングの相談を受けた際の覚書。 下記のように UNIX Domain Socket を挟んで IPC しているコードがあり、macOS と Linux で挙動が違っているのを調べていた。Linux では Go Ethereum が送ってくるデータを全部読み出せるが、macOS だと一部 ( 8192 バイト 注1 ) しか読み出せないとのことだった。 Ruby のコード <----- UNIX Domain Socket -----> Go Ethereum 色々調べてみたところ、macOS / Linux で UNIX Domain Socket のデフォルトの SO_SNDBUF, SO_RCVBU

        UNIX Domain Socket の SO_SNDBUF, SO_RCVBUF についての覚書 - hibomaの日記
      • Linux Kernel: rtnl_mutex を長時間 ロックして刺さった状態を観察する - hibomaの日記

        Linux Kernel で struct net_device や Routing Netlink の処理を排他制御する mutex である rtnl_mutex を任意の時間 ロックするカーネルモジュールを作成して、rtnl_mutex のロックがユーザランドのプロセスやカーネルスレッド等にどういった影響を及ぼすかを観察する ... というエントリです Linux カーネルの話や、strace, gdb, /proc/$pid/stack を使ったデバッグ方法に興味あるかた向けです 経緯 とあるサーバで動いてる大量のプロセスが rtnl_mutex をロックする箇所やそれに関連していそうな箇所で TASK_UNINTERRUPTIBLE でブロックしてしまい、障害を起こしているのに遭遇して原因を追いかけていたのでした 障害の再現が難しくて困っていたのだが、別のアプローチとして 「rtn

          Linux Kernel: rtnl_mutex を長時間 ロックして刺さった状態を観察する - hibomaの日記
        • 那須塩原に移り住んで 2年 - GMOペパボエンジニア Advent Calendar 2022 - hibomaの日記

          GMOペパボエンジニア Advent Calendar 2022 の 12月10日分のエントリです adventar.org イントロダクション 2020年秋に東京から那須塩原に移住した。2年が経過した今も那須塩原に住んでいる。仕事は リモートワーク + 月に数回 東京に出社する形態になった。 移住ネタやリモートワークネタはちょっと時流を過ぎた印象がある。が、力を抜いて文を書いてみようと思う。 ⚠️ <都会暮らし> と <田舎暮らし・地方暮らし> でどちらかに優劣をつけて語りたい文章ではありません。また、オンサイトとリモートワーク どちらかに優劣をつけて語りたい文章でもありません 那須塩原市 那須塩原市は、東京から北に約150km 離れた栃木県北に位置する人口約11万人の市。 黒磯駅〜那須塩原駅〜西那須野駅の周辺と国道四号線沿いに街区が広がっている。国道四号線と東北本線・東北新幹線が、背骨

            那須塩原に移り住んで 2年 - GMOペパボエンジニア Advent Calendar 2022 - hibomaの日記
          • 【続】 Linux Kernel: cgroup 削除後も残り続ける slab キャッシュ についての調べ物 - upsteam は修正パッチが入って解決済み - hibomaの日記

            以前に下記のエントリを書きました。勉強会に登壇するネタとして調べ直したところ 新しい Linux カーネルでは問題が解決されていました。 hiboma.hatenadiary.jp hiboma.hatenadiary.jp hiboma.hatenadiary.jp hiboma.hatenadiary.jp どんな問題ですか? 「cgroup を削除した後も sysfs の slab キャッシュ が残る」 と 「slab キャッシュ が reclaim されるタイミングで必要のない uevent が送出される」 という二つの問題でした。 問題 と書いていますが、対象の slab キャッシュは inode っキャッシュや dentry キャッシュ であり、reclaimable な slab キャッシュです。 reclaimable な slab キャッシュは、カーネルにメモリプレッシャ

              【続】 Linux Kernel: cgroup 削除後も残り続ける slab キャッシュ についての調べ物 - upsteam は修正パッチが入って解決済み - hibomaの日記
            • 第12回 コンテナ技術の情報交換会@オンラインにて 「cgroup と sysfs ファイル - トラブルシューティングから cgroup を深追いする」を発表しました - hibomaの日記

              第12回 コンテナ技術の情報交換会@オンラインに発表しました! ct-study.connpass.com スライド 発表のスライドは下記で公開しております speakerdeck.com speakerdeck でフォントがしゃばしゃばになるのを解決できていないので、PDF でも公開しています ... github.com スライドの概要 弊社 GMO ペパボの ロリポップ!マネージドクラウドでのトラブルシューティング事例を契機として cgroup の sysfs ( スラブキャッシュ ) 周りを追いかけた内容を発表しています。 発表内容は、過去のエントリを勉強会向けにまとめ直した内容です。モデル図などを加筆しています。 hiboma.hatenadiary.jp トラブルの詳細については、ブログでは過去にも公開していなかった内容で、今回の発表でのみ閲覧できます。当時、実際に記録したコマ

                第12回 コンテナ技術の情報交換会@オンラインにて 「cgroup と sysfs ファイル - トラブルシューティングから cgroup を深追いする」を発表しました - hibomaの日記
              • Linux Kernel: cgroup 削除後も残り続ける slab キャッシュ についての調べ物 - hibomaの日記

                タイトルの通りで、コンテナの生成と削除が頻繁におこなわれているホストで、 cgroup 削除後も特定の slab キャッシュ ( + sysfs のファイル = kobject ) が残るという現象を調べていました 環境 vagrant@bionic:~$ uname -a Linux bionic 5.4.1-050401-generic #201911290555 SMP Fri Nov 29 11:03:47 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux 再現の方法 cgroup v1 + memory コントローラーでグループを作る そのグループ内で適当なファイルを作成する cgroup のグループを削除する とすれば ok です #!/bin/bash set -ex for i in {1..10}; do mkdir /sys/fs/cgro

                  Linux Kernel: cgroup 削除後も残り続ける slab キャッシュ についての調べ物 - hibomaの日記
                • Linux: mmap(2) したメモリに書き込みした際の Copy On Wirte を観察する - hibomaの日記

                  イントロ ペパボ社内 Slack で Linux の CoW = Copy On Write について、 id:ryuichi1208 id:udzura とディスカッションして盛り上がっていた。カーネル内で CoW を処理する関数を追えないか? という話があがったので、調べてみた次第。 ( なぜ CoW の話が出てきたのか / どんなことをディスカッションしてたのかは id:ryuichi1208 がまとめくれるかも? ) 結論 CoW を観察するには do_wp_pageを観察するといいみたい wiki.bit-hive.com ( いつもお世話になっております ) do_wp_page のソース https://elixir.bootlin.com/linux/v5.11.22/source/mm/memory.c#L3085 検証環境 Vagrant で用意した bento/ubu

                    Linux: mmap(2) したメモリに書き込みした際の Copy On Wirte を観察する - hibomaの日記
                  • strace -c を使う際に -w オプションを使い分けよう - hibomaの日記

                    strace を使う際に -c をつけると、システムコール呼び出しの統計を取れる vagrant@xenial:~$ strace -c find >/dev/null % time seconds usecs/call calls errors syscall ------ ----------- ----------- --------- --------- ---------------- 47.43 0.033697 145 232 getdents 46.00 0.032676 141 232 newfstatat 6.08 0.004320 9 474 close 0.49 0.000349 0 1045 fcntl 0.00 0.000000 0 10 read 0.00 0.000000 0 4 write 0.00 0.000000 0 15 4 open 0.00 0.

                      strace -c を使う際に -w オプションを使い分けよう - hibomaの日記
                    • 会社のテックブログに記事を書きました: ペパボ トラブルシュート伝 - TCP: out of memory -- consider tuning tcp_mem の dmesg から辿る 詳解 Linux net.ipv4.tcp_mem - hibomaの日記

                      以下の記事です。 tech.pepabo.com TCP our of memory memory pressure モード net.ipv4.tcp_mem 以上の三つの詳細を扱ったエントリです。TCP で大規模なトラフィックを扱っているサーバを扱われている場合、問題がないかどうかを確かめてみるとよいかと思います。 本文長いです。何に気をつけたらいいんでしょう? プラクティカルな話だけをまとめると、以下の4行です。 memory pressure モードに入ってしまうと warning です TCP out of memory が出てしまうと critical です 監視は /proc/ 以下のファイルを見ましょう チューニングは net.ipv4.tcp_mem で行いましょう LVS はどうなの? LVS でロードバランシングしている場合は、TCP スタックを通らないため TCP o

                        会社のテックブログに記事を書きました: ペパボ トラブルシュート伝 - TCP: out of memory -- consider tuning tcp_mem の dmesg から辿る 詳解 Linux net.ipv4.tcp_mem - hibomaの日記
                      • tig でコミットを読んでる際に、コミットメッセージを DeepL でピっと翻訳したい - hibomaの日記

                        macOS の話題です Linux カーネルのリポジトリなんかでコミットメッセージをすぐ翻訳して読みたいなと思ったので、以下のように ~/.tigrc を設定してみる 設定例 ショートカットキーは、適当に 9 に bind しています bind generic 9 @sh -c 'git log --format=%B -n1 %(commit) | pbcopy; open /Applications/DeepL.app; osascript -e \'tell application "System Events" to keystroke "v" using command down\'' 利用のイメージ さて、 tig でコミットを眺めてる時に 9 をピッと押すと DeepL が出てきて、コミットログをペーストして翻訳して出てくる とりあえずは便利に使えそうかな? 注意書き もっと

                          tig でコミットを読んでる際に、コミットメッセージを DeepL でピっと翻訳したい - hibomaの日記
                        • Linux Kernel: cgroup, sysfs, kobject, uevent についての調べ物 - hibomaの日記

                          cgroup v1 + memory コントローラーで制限を課した際に、sysfs のファイル = kboject が生成/削除されるタイミングやその仕組みを調べていました 例えば下記のような sysfs のファイルです /sys/kernel/slab/dentry/cgroup/dentry(979:@hogehoge)/objects /sys/kernel/slab/kmalloc-4k/cgroup/kmalloc-4k(979:@hogehoge)/objects /sys/kernel/slab/kmalloc-32/cgroup/kmalloc-32(979:@hogehoge)/objects /sys/kernel/slab/kmalloc-2k/cgroup/kmalloc-2k(979:@hogehoge)/objects /sys/kernel/slab/kmal

                            Linux Kernel: cgroup, sysfs, kobject, uevent についての調べ物 - hibomaの日記
                          • Linux Kernel: PSI - Pressure Stall Information /proc/pressure/io で IO 待ちを観察する - hibomaの日記

                            www.kernel.org Linux Kernel 4.20 で導入された PSI - Pressure Stall Information の /proc/pressure/io について気になることがあったので調べていました イントロダクション PSI を使うと CPU, メモリ, IO で stall した時間(割合) を計測できるってなことですが、どういった実装で「IO 待ち」なタスクを計測しているのかかが疑問で、社内で udzula さんあれこれ話を聞いていたのでした ソースを読む io_schedule_prepare() という関数を呼び出す際に current->in_iowait = 1 をセットしていて、これがポイント int io_schedule_prepare(void) { int old_iowait = current->in_iowait; curre

                              Linux Kernel: PSI - Pressure Stall Information /proc/pressure/io で IO 待ちを観察する - hibomaの日記
                            • Linux Kernel: PSI - Pressure Stall Information /proc/pressure/memory で メモリのストールを観察する - hibomaの日記

                              下記の続きエントリです hiboma.hatenadiary.jp 今回は PSI - Pressure Stall Information の /proc/pressure/memory についてのエントリ PSI を使うと CPU, メモリ, IO で stall した時間(割合) を計測できるってなことですが、どういった実装で「memory stall = メモリのストール」を起こしているタスクを計測しているのかかが疑問で調べていました PSI のドキュメント www.kernel.org 正直、ドキュメントを読んだだけでは /proc/pressure/memory がどういったタイミングで計上されるのか分かりませんでした. ソースを読む www.kernel.org ./kernel/sched/psi.c をざーっと呼んでいって psi_memstall_enter() と p

                                Linux Kernel: PSI - Pressure Stall Information /proc/pressure/memory で メモリのストールを観察する - hibomaの日記
                              • strace 5.2 で追加された -z -Z オプション - hibomaの日記

                                strace.io strace 5.2 で追加された -z -Z オプションが面白かったので書いておきます (注意: この記事を書いた時点では 5.3 が最新です ) -Z 失敗したシステムコールだけフィルターしてくれるオプション root@xenial:~/strace-5.3# ./strace -Z ls >/dev/null access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory) access

                                  strace 5.2 で追加された -z -Z オプション - hibomaの日記
                                • Proof of Concept: Linux カーネルモジュールで特定のディレクトリ以下の dentry キャッシュを破棄する - hibomaの日記

                                  動機 社内の同僚がカーネル周りの問題を調べていて slab キャッシュ ( = dentry, inode ) に関する内容を追っていた。 その問題自体の内容は、アレがコレで、伏せておく。 その問題をみているうちに 「特定のディレクトリ以下の slab キャッシュ = dentry / inode キャッシュ を選択的に破棄することはできないのかな?」 という関心がわきいろいろ調べていた。 ビジネスロジックを担当するアプリケーションの実行とは関係ない箇所で大量に slab キャッシュ (dentry, inode) を蓄えてしまうプロセスがいて、そいつらが作ったキャッシュを意図して破棄したいようなユースケースを考えている (例: バックアップやウィルススキャン) (注意: メモリプレッシャーがかかるとカーネルがよしなに扱ってくれるはずで、「通常」のサーバ用途では slab キャッシュをあれ

                                    Proof of Concept: Linux カーネルモジュールで特定のディレクトリ以下の dentry キャッシュを破棄する - hibomaの日記
                                  1

                                  新着記事