Units
Translation components API.
See the Weblate's Web API documentation for detailed description of the API.
GET /api/translations/documentation/articlesgeom-class_index/pl/units/?format=api&page=3
https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/units/?format=api&page=2", "results": [ { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "GEOM Command Structure" ], "previous_source": "", "target": [ "" ], "id_hash": 4003709505369682491, "content_hash": 4003709505369682491, "location": "documentation/content/en/articles/geom-class/_index.adoc:328", "context": "", "note": "type: Title ===", "flags": "no-wrap", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 101, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 3, "source_unit": "https://translate-dev.freebsd.org/api/units/392819/?format=api", "priority": 100, "id": 1533268, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=b7900895236a323b", "url": "https://translate-dev.freebsd.org/api/units/1533268/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.742857Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "The helper [.filename]#geom_CLASSNAME.so# library exports `class_commands` structure, which is an array of `struct g_command` elements. Commands are of uniform format and look like:" ], "previous_source": "", "target": [ "" ], "id_hash": 3913882113725576912, "content_hash": 3913882113725576912, "location": "documentation/content/en/articles/geom-class/_index.adoc:332", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 102, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 23, "source_unit": "https://translate-dev.freebsd.org/api/units/610740/?format=api", "priority": 100, "id": 1533269, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=b650e70bb95e36d0", "url": "https://translate-dev.freebsd.org/api/units/1533269/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.746653Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ " verb [-options] geomname [other]\n" ], "previous_source": "", "target": [ "" ], "id_hash": 5264344752896083276, "content_hash": 5264344752896083276, "location": "documentation/content/en/articles/geom-class/_index.adoc:336", "context": "", "note": "type: delimited block . 4", "flags": "no-wrap", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 103, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 4, "source_unit": "https://translate-dev.freebsd.org/api/units/392823/?format=api", "priority": 100, "id": 1533270, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=c90eb5a93b90054c", "url": "https://translate-dev.freebsd.org/api/units/1533270/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.750514Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Common verbs are:" ], "previous_source": "", "target": [ "" ], "id_hash": -2910166724858042500, "content_hash": -2910166724858042500, "location": "documentation/content/en/articles/geom-class/_index.adoc:339", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 104, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 3, "source_unit": "https://translate-dev.freebsd.org/api/units/392825/?format=api", "priority": 100, "id": 1533271, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=579d02c84faca77c", "url": "https://translate-dev.freebsd.org/api/units/1533271/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.753836Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "label - to write metadata to devices so they can be recognized at tasting and brought up in geoms" ], "previous_source": "", "target": [ "" ], "id_hash": 350084159370683408, "content_hash": 350084159370683408, "location": "documentation/content/en/articles/geom-class/_index.adoc:341", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 105, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 19, "source_unit": "https://translate-dev.freebsd.org/api/units/392827/?format=api", "priority": 100, "id": 1533272, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=84dbbfb028c7e410", "url": "https://translate-dev.freebsd.org/api/units/1533272/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.757377Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "destroy - to destroy metadata, so the geoms get destroyed" ], "previous_source": "", "target": [ "" ], "id_hash": 1160345008858737269, "content_hash": 1160345008858737269, "location": "documentation/content/en/articles/geom-class/_index.adoc:342", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 106, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 10, "source_unit": "https://translate-dev.freebsd.org/api/units/392829/?format=api", "priority": 100, "id": 1533273, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=901a5fa345ec2a75", "url": "https://translate-dev.freebsd.org/api/units/1533273/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.760901Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Common options are:" ], "previous_source": "", "target": [ "" ], "id_hash": 1202273588528284789, "content_hash": 1202273588528284789, "location": "documentation/content/en/articles/geom-class/_index.adoc:344", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 107, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 3, "source_unit": "https://translate-dev.freebsd.org/api/units/392831/?format=api", "priority": 100, "id": 1533274, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=90af557577100475", "url": "https://translate-dev.freebsd.org/api/units/1533274/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.764027Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "`-v` : be verbose" ], "previous_source": "", "target": [ "" ], "id_hash": 3310352276939931083, "content_hash": 3310352276939931083, "location": "documentation/content/en/articles/geom-class/_index.adoc:346", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 108, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 4, "source_unit": "https://translate-dev.freebsd.org/api/units/392833/?format=api", "priority": 100, "id": 1533275, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=adf0bbdb5c68fdcb", "url": "https://translate-dev.freebsd.org/api/units/1533275/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.767468Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "`-f` : force" ], "previous_source": "", "target": [ "" ], "id_hash": -5143927311975636964, "content_hash": -5143927311975636964, "location": "documentation/content/en/articles/geom-class/_index.adoc:347", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 109, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 3, "source_unit": "https://translate-dev.freebsd.org/api/units/392835/?format=api", "priority": 100, "id": 1533276, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=389d195d0b43201c", "url": "https://translate-dev.freebsd.org/api/units/1533276/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.770598Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Many actions, such as labeling and destroying metadata can be performed in userland. For this, `struct g_command` provides field `gc_func` that can be set to a function (in the same [.filename]#.so#) that will be called to process a verb. If `gc_func` is NULL, the command will be passed to kernel module, to `.ctlreq` function of the geom class." ], "previous_source": "", "target": [ "" ], "id_hash": 508720321798549901, "content_hash": 508720321798549901, "location": "documentation/content/en/articles/geom-class/_index.adoc:351", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 110, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 58, "source_unit": "https://translate-dev.freebsd.org/api/units/610742/?format=api", "priority": 100, "id": 1533277, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=870f566ff6d3318d", "url": "https://translate-dev.freebsd.org/api/units/1533277/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.773772Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Geoms" ], "previous_source": "", "target": [ "" ], "id_hash": 859844635806678913, "content_hash": 859844635806678913, "location": "documentation/content/en/articles/geom-class/_index.adoc:353", "context": "", "note": "type: Title ===", "flags": "no-wrap", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 111, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 1, "source_unit": "https://translate-dev.freebsd.org/api/units/392839/?format=api", "priority": 100, "id": 1533278, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=8beec823ff483f81", "url": "https://translate-dev.freebsd.org/api/units/1533278/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.777343Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Geoms are instances of GEOM classes. They have internal data (a softc structure) and some functions with which they respond to external events." ], "previous_source": "", "target": [ "" ], "id_hash": -607884014219661009, "content_hash": -607884014219661009, "location": "documentation/content/en/articles/geom-class/_index.adoc:357", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 112, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 23, "source_unit": "https://translate-dev.freebsd.org/api/units/610744/?format=api", "priority": 100, "id": 1533279, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=77905cb5b3cc712f", "url": "https://translate-dev.freebsd.org/api/units/1533279/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.780326Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "The event functions are:" ], "previous_source": "", "target": [ "" ], "id_hash": -702535108162590422, "content_hash": -702535108162590422, "location": "documentation/content/en/articles/geom-class/_index.adoc:359", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 113, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 4, "source_unit": "https://translate-dev.freebsd.org/api/units/392843/?format=api", "priority": 100, "id": 1533280, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=7640180a93ba692a", "url": "https://translate-dev.freebsd.org/api/units/1533280/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.783881Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "`.access` : calculates permissions (read/write/exclusive)" ], "previous_source": "", "target": [ "" ], "id_hash": 2413110051074981518, "content_hash": 2413110051074981518, "location": "documentation/content/en/articles/geom-class/_index.adoc:361", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 114, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 5, "source_unit": "https://translate-dev.freebsd.org/api/units/392845/?format=api", "priority": 100, "id": 1533281, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=a17d16ce663fbe8e", "url": "https://translate-dev.freebsd.org/api/units/1533281/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.786872Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "`.dumpconf` : returns XML-formatted information about the geom" ], "previous_source": "", "target": [ "" ], "id_hash": -3942600068373115698, "content_hash": -3942600068373115698, "location": "documentation/content/en/articles/geom-class/_index.adoc:362", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 115, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 8, "source_unit": "https://translate-dev.freebsd.org/api/units/392847/?format=api", "priority": 100, "id": 1533282, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=4949122069308cce", "url": "https://translate-dev.freebsd.org/api/units/1533282/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.789579Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "`.orphan` : called when some underlying provider gets disconnected" ], "previous_source": "", "target": [ "" ], "id_hash": -2180089006850224225, "content_hash": -2180089006850224225, "location": "documentation/content/en/articles/geom-class/_index.adoc:363", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 116, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 9, "source_unit": "https://translate-dev.freebsd.org/api/units/392849/?format=api", "priority": 100, "id": 1533283, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=61bec4994ff54f9f", "url": "https://translate-dev.freebsd.org/api/units/1533283/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.792471Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "`.spoiled` : called when some underlying provider gets written to" ], "previous_source": "", "target": [ "" ], "id_hash": -9090799562566569807, "content_hash": -9090799562566569807, "location": "documentation/content/en/articles/geom-class/_index.adoc:364", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 117, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 10, "source_unit": "https://translate-dev.freebsd.org/api/units/392851/?format=api", "priority": 100, "id": 1533284, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=01d6fdf684f170b1", "url": "https://translate-dev.freebsd.org/api/units/1533284/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.795671Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "`.start` : handles I/O" ], "previous_source": "", "target": [ "" ], "id_hash": -3973659223760008772, "content_hash": -3973659223760008772, "location": "documentation/content/en/articles/geom-class/_index.adoc:365", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 118, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 4, "source_unit": "https://translate-dev.freebsd.org/api/units/392853/?format=api", "priority": 100, "id": 1533285, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=48dab9fd455489bc", "url": "https://translate-dev.freebsd.org/api/units/1533285/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.799383Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "These functions are called from the `g_down` kernel thread and there can be no sleeping in this context, (see definition of sleeping elsewhere) which limits what can be done quite a bit, but forces the handling to be fast." ], "previous_source": "", "target": [ "" ], "id_hash": -6845612109119388609, "content_hash": -6845612109119388609, "location": "documentation/content/en/articles/geom-class/_index.adoc:367", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 119, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 39, "source_unit": "https://translate-dev.freebsd.org/api/units/392855/?format=api", "priority": 100, "id": 1533286, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=20ff800e6dd3843f", "url": "https://translate-dev.freebsd.org/api/units/1533286/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.802715Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Of these, the most important function for doing actual useful work is the `.start`() function, which is called when a BIO request arrives for a provider managed by a instance of geom class." ], "previous_source": "", "target": [ "" ], "id_hash": -6048322254629439506, "content_hash": -6048322254629439506, "location": "documentation/content/en/articles/geom-class/_index.adoc:369", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 120, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 33, "source_unit": "https://translate-dev.freebsd.org/api/units/392857/?format=api", "priority": 100, "id": 1533287, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=2c100af46db8f7ee", "url": "https://translate-dev.freebsd.org/api/units/1533287/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.806067Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "GEOM Threads" ], "previous_source": "", "target": [ "" ], "id_hash": 1253248071944755092, "content_hash": 1253248071944755092, "location": "documentation/content/en/articles/geom-class/_index.adoc:371", "context": "", "note": "type: Title ===", "flags": "no-wrap", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 121, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 2, "source_unit": "https://translate-dev.freebsd.org/api/units/392859/?format=api", "priority": 100, "id": 1533288, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=91646e7b3fb5d794", "url": "https://translate-dev.freebsd.org/api/units/1533288/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.829965Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "There are three kernel threads created and run by the GEOM framework:" ], "previous_source": "", "target": [ "" ], "id_hash": -3772097875905842675, "content_hash": -3772097875905842675, "location": "documentation/content/en/articles/geom-class/_index.adoc:374", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 122, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 12, "source_unit": "https://translate-dev.freebsd.org/api/units/392861/?format=api", "priority": 100, "id": 1533289, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=4ba6d0f7a0a0720d", "url": "https://translate-dev.freebsd.org/api/units/1533289/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.836770Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "`g_down` : Handles requests coming from high-level entities (such as a userland request) on the way to physical devices" ], "previous_source": "", "target": [ "" ], "id_hash": 983729229275228922, "content_hash": 983729229275228922, "location": "documentation/content/en/articles/geom-class/_index.adoc:376", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 123, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 19, "source_unit": "https://translate-dev.freebsd.org/api/units/392863/?format=api", "priority": 100, "id": 1533290, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=8da6e885a21e6afa", "url": "https://translate-dev.freebsd.org/api/units/1533290/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.840346Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "`g_up` : Handles responses from device drivers to requests made by higher-level entities" ], "previous_source": "", "target": [ "" ], "id_hash": -4848704196125574745, "content_hash": -4848704196125574745, "location": "documentation/content/en/articles/geom-class/_index.adoc:377", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 124, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 13, "source_unit": "https://translate-dev.freebsd.org/api/units/392865/?format=api", "priority": 100, "id": 1533291, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=3cb5f13920fd39a7", "url": "https://translate-dev.freebsd.org/api/units/1533291/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.843753Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "`g_event` : Handles all other cases: creation of geom instances, access counting, \"spoil\" events, etc." ], "previous_source": "", "target": [ "" ], "id_hash": -652245322102560678, "content_hash": -652245322102560678, "location": "documentation/content/en/articles/geom-class/_index.adoc:378", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 125, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 15, "source_unit": "https://translate-dev.freebsd.org/api/units/392867/?format=api", "priority": 100, "id": 1533292, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=76f2c255d5aaa85a", "url": "https://translate-dev.freebsd.org/api/units/1533292/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.847810Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "When a user process issues \"read data X at offset Y of a file\" request, this is what happens:" ], "previous_source": "", "target": [ "" ], "id_hash": -2781064052940566581, "content_hash": -2781064052940566581, "location": "documentation/content/en/articles/geom-class/_index.adoc:380", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 126, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 19, "source_unit": "https://translate-dev.freebsd.org/api/units/392869/?format=api", "priority": 100, "id": 1533293, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=5967acfa82de8fcb", "url": "https://translate-dev.freebsd.org/api/units/1533293/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.851340Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "The filesystem converts the request into a struct bio instance and passes it to the GEOM subsystem. It knows what geom instance should handle it because filesystems are hosted directly on a geom instance." ], "previous_source": "", "target": [ "" ], "id_hash": 6560280308775410818, "content_hash": 6560280308775410818, "location": "documentation/content/en/articles/geom-class/_index.adoc:382", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 127, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 34, "source_unit": "https://translate-dev.freebsd.org/api/units/392871/?format=api", "priority": 100, "id": 1533294, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=db0acc2ed78c5c82", "url": "https://translate-dev.freebsd.org/api/units/1533294/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.855614Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "The request ends up as a call to the `.start`() function made on the g_down thread and reaches the top-level geom instance." ], "previous_source": "", "target": [ "" ], "id_hash": -1575735651899663629, "content_hash": -1575735651899663629, "location": "documentation/content/en/articles/geom-class/_index.adoc:383", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 128, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 22, "source_unit": "https://translate-dev.freebsd.org/api/units/392873/?format=api", "priority": 100, "id": 1533295, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=6a21dcc5f09a1af3", "url": "https://translate-dev.freebsd.org/api/units/1533295/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.859444Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "This top-level geom instance (for example the partition slicer) determines that the request should be routed to a lower-level instance (for example the disk driver). It makes a copy of the bio request (bio requests _ALWAYS_ need to be copied between instances, with `g_clone_bio`()!), modifies the data offset and target provider fields and executes the copy with `g_io_request`()" ], "previous_source": "", "target": [ "" ], "id_hash": -1824111852262209610, "content_hash": -1824111852262209610, "location": "documentation/content/en/articles/geom-class/_index.adoc:384", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 129, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 58, "source_unit": "https://translate-dev.freebsd.org/api/units/392875/?format=api", "priority": 100, "id": 1533296, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=66af73ef5754c7b6", "url": "https://translate-dev.freebsd.org/api/units/1533296/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.863526Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "The disk driver gets the bio request also as a call to `.start`() on the `g_down` thread. It talks to hardware, gets the data back, and calls `g_io_deliver`() on the bio." ], "previous_source": "", "target": [ "" ], "id_hash": 4223666529604773365, "content_hash": 4223666529604773365, "location": "documentation/content/en/articles/geom-class/_index.adoc:385", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 130, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 31, "source_unit": "https://translate-dev.freebsd.org/api/units/392877/?format=api", "priority": 100, "id": 1533297, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=ba9d7a54aacca5f5", "url": "https://translate-dev.freebsd.org/api/units/1533297/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.867183Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Now, the notification of bio completion \"bubbles up\" in the `g_up` thread. First the partition slicer gets `.done`() called in the `g_up` thread, it uses information stored in the bio to free the cloned `bio` structure (with `g_destroy_bio`()) and calls `g_io_deliver`() on the original request." ], "previous_source": "", "target": [ "" ], "id_hash": -9094431272858718362, "content_hash": -9094431272858718362, "location": "documentation/content/en/articles/geom-class/_index.adoc:386", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 131, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 45, "source_unit": "https://translate-dev.freebsd.org/api/units/392879/?format=api", "priority": 100, "id": 1533298, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=01ca16f1130d6f66", "url": "https://translate-dev.freebsd.org/api/units/1533298/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.870739Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "The filesystem gets the data and transfers it to userland." ], "previous_source": "", "target": [ "" ], "id_hash": 1655856705657308942, "content_hash": 1655856705657308942, "location": "documentation/content/en/articles/geom-class/_index.adoc:387", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 132, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 10, "source_unit": "https://translate-dev.freebsd.org/api/units/392881/?format=api", "priority": 100, "id": 1533299, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=96fac8e693a7070e", "url": "https://translate-dev.freebsd.org/api/units/1533299/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.874667Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "See man:g_bio[9] man page for information how the data is passed back and forth in the `bio` structure (note in particular the `bio_parent` and `bio_children` fields and how they are handled)." ], "previous_source": "", "target": [ "" ], "id_hash": 7563514802142836621, "content_hash": 7563514802142836621, "location": "documentation/content/en/articles/geom-class/_index.adoc:389", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 133, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 31, "source_unit": "https://translate-dev.freebsd.org/api/units/392883/?format=api", "priority": 100, "id": 1533300, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=e8f700a3ab21f78d", "url": "https://translate-dev.freebsd.org/api/units/1533300/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.877887Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "One important feature is: __THERE CAN BE NO SLEEPING IN G_UP AND G_DOWN THREADS__. This means that none of the following things can be done in those threads (the list is of course not complete, but only informative):" ], "previous_source": "", "target": [ "" ], "id_hash": 7732918960792571141, "content_hash": 7732918960792571141, "location": "documentation/content/en/articles/geom-class/_index.adoc:392", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 134, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 38, "source_unit": "https://translate-dev.freebsd.org/api/units/610746/?format=api", "priority": 100, "id": 1533301, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=eb50d8d2f6ec8d05", "url": "https://translate-dev.freebsd.org/api/units/1533301/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.881750Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Calls to `msleep`() and `tsleep`(), obviously." ], "previous_source": "", "target": [ "" ], "id_hash": 1268291264142964237, "content_hash": 1268291264142964237, "location": "documentation/content/en/articles/geom-class/_index.adoc:394", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 135, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 6, "source_unit": "https://translate-dev.freebsd.org/api/units/392887/?format=api", "priority": 100, "id": 1533302, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=9199e02f5ef8f60d", "url": "https://translate-dev.freebsd.org/api/units/1533302/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.885254Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Calls to `g_write_data`() and `g_read_data`(), because these sleep between passing the data to consumers and returning." ], "previous_source": "", "target": [ "" ], "id_hash": -7956395640189628383, "content_hash": -7956395640189628383, "location": "documentation/content/en/articles/geom-class/_index.adoc:395", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 136, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 16, "source_unit": "https://translate-dev.freebsd.org/api/units/392889/?format=api", "priority": 100, "id": 1533303, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=11953451ee07d021", "url": "https://translate-dev.freebsd.org/api/units/1533303/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.888563Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Waiting for I/O." ], "previous_source": "", "target": [ "" ], "id_hash": -7512915233029094466, "content_hash": -7512915233029094466, "location": "documentation/content/en/articles/geom-class/_index.adoc:396", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 137, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 3, "source_unit": "https://translate-dev.freebsd.org/api/units/392891/?format=api", "priority": 100, "id": 1533304, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=17bcc36693ae03be", "url": "https://translate-dev.freebsd.org/api/units/1533304/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.891658Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Calls to man:malloc[9] and `uma_zalloc`() with `M_WAITOK` flag set" ], "previous_source": "", "target": [ "" ], "id_hash": 4410615506447547656, "content_hash": 4410615506447547656, "location": "documentation/content/en/articles/geom-class/_index.adoc:397", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 138, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 9, "source_unit": "https://translate-dev.freebsd.org/api/units/392893/?format=api", "priority": 100, "id": 1533305, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=bd35a76f46a2bd08", "url": "https://translate-dev.freebsd.org/api/units/1533305/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.895750Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "sx and other sleepable locks" ], "previous_source": "", "target": [ "" ], "id_hash": 7424025029644903563, "content_hash": 7424025029644903563, "location": "documentation/content/en/articles/geom-class/_index.adoc:398", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 139, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 5, "source_unit": "https://translate-dev.freebsd.org/api/units/392895/?format=api", "priority": 100, "id": 1533306, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=e7076f6e2797e48b", "url": "https://translate-dev.freebsd.org/api/units/1533306/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.899752Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "This restriction is here to stop GEOM code clogging the I/O request path, since sleeping is usually not time-bound and there can be no guarantees on how long will it take (there are some other, more technical reasons also). It also means that there is not much that can be done in those threads; for example, almost any complex thing requires memory allocation. Fortunately, there is a way out: creating additional kernel threads." ], "previous_source": "", "target": [ "" ], "id_hash": 7157419289902986773, "content_hash": 7157419289902986773, "location": "documentation/content/en/articles/geom-class/_index.adoc:402", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 140, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 73, "source_unit": "https://translate-dev.freebsd.org/api/units/610748/?format=api", "priority": 100, "id": 1533307, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=e35442ec2b323615", "url": "https://translate-dev.freebsd.org/api/units/1533307/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.903306Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Kernel Threads for Use in GEOM Code" ], "previous_source": "", "target": [ "" ], "id_hash": 5325401779863095766, "content_hash": 5325401779863095766, "location": "documentation/content/en/articles/geom-class/_index.adoc:404", "context": "", "note": "type: Title ===", "flags": "no-wrap", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 141, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 7, "source_unit": "https://translate-dev.freebsd.org/api/units/392899/?format=api", "priority": 100, "id": 1533308, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=c9e7a0b41ef909d6", "url": "https://translate-dev.freebsd.org/api/units/1533308/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.922903Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Kernel threads are created with man:kthread_create[9] function, and they are sort of similar to userland threads in behavior, only they cannot return to caller to signify termination, but must call man:kthread_exit[9]." ], "previous_source": "", "target": [ "" ], "id_hash": 2283103934268588807, "content_hash": 2283103934268588807, "location": "documentation/content/en/articles/geom-class/_index.adoc:407", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 142, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 31, "source_unit": "https://translate-dev.freebsd.org/api/units/392901/?format=api", "priority": 100, "id": 1533309, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=9faf36ee8b604307", "url": "https://translate-dev.freebsd.org/api/units/1533309/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.935511Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "In GEOM code, the usual use of threads is to offload processing of requests from `g_down` thread (the `.start`() function). These threads look like \"event handlers\": they have a linked list of event associated with them (on which events can be posted by various functions in various threads so it must be protected by a mutex), take the events from the list one by one and process them in a big `switch`() statement." ], "previous_source": "", "target": [ "" ], "id_hash": 1758162626274501902, "content_hash": 1758162626274501902, "location": "documentation/content/en/articles/geom-class/_index.adoc:410", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 143, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 73, "source_unit": "https://translate-dev.freebsd.org/api/units/610750/?format=api", "priority": 100, "id": 1533310, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=98663f97ec75a50e", "url": "https://translate-dev.freebsd.org/api/units/1533310/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.939603Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "The main benefit of using a thread to handle I/O requests is that it can sleep when needed. Now, this sounds good, but should be carefully thought out. Sleeping is well and very convenient but can very effectively destroy performance of the geom transformation. Extremely performance-sensitive classes probably should do all the work in `.start`() function call, taking great care to handle out-of-memory and similar errors." ], "previous_source": "", "target": [ "" ], "id_hash": 46341245538855758, "content_hash": 46341245538855758, "location": "documentation/content/en/articles/geom-class/_index.adoc:415", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 144, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 66, "source_unit": "https://translate-dev.freebsd.org/api/units/610752/?format=api", "priority": 100, "id": 1533311, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=80a4a31e06caeb4e", "url": "https://translate-dev.freebsd.org/api/units/1533311/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.944632Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "The other benefit of having a event-handler thread like that is to serialize all the requests and responses coming from different geom threads into one thread. This is also very convenient but can be slow. In most cases, handling of `.done`() requests can be left to the `g_up` thread." ], "previous_source": "", "target": [ "" ], "id_hash": 2973882367299432920, "content_hash": 2973882367299432920, "location": "documentation/content/en/articles/geom-class/_index.adoc:419", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 145, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 49, "source_unit": "https://translate-dev.freebsd.org/api/units/610754/?format=api", "priority": 100, "id": 1533312, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=a9455a41baae31d8", "url": "https://translate-dev.freebsd.org/api/units/1533312/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.948938Z" }, { "translation": "https://translate-dev.freebsd.org/api/translations/documentation/articlesgeom-class_index/pl/?format=api", "source": [ "Mutexes in FreeBSD kernel (see man:mutex[9]) have one distinction from their more common userland cousins - the code cannot sleep while holding a mutex). If the code needs to sleep a lot, man:sx[9] locks may be more appropriate. On the other hand, if you do almost everything in a single thread, you may get away with no mutexes at all." ], "previous_source": "", "target": [ "" ], "id_hash": -2440898791246672140, "content_hash": -2440898791246672140, "location": "documentation/content/en/articles/geom-class/_index.adoc:422", "context": "", "note": "type: Plain text", "flags": "", "labels": [], "state": 0, "fuzzy": false, "translated": false, "approved": false, "position": 146, "has_suggestion": false, "has_comment": false, "has_failing_check": false, "num_words": 60, "source_unit": "https://translate-dev.freebsd.org/api/units/610756/?format=api", "priority": 100, "id": 1533313, "web_url": "https://translate-dev.freebsd.org/translate/documentation/articlesgeom-class_index/pl/?checksum=5e202f7b570fcef4", "url": "https://translate-dev.freebsd.org/api/units/1533313/?format=api", "explanation": "", "extra_flags": "", "pending": false, "timestamp": "2023-04-15T04:50:47.952656Z" } ] }{ "count": 146, "next": null, "previous": "